Denne artikkelen er en speilartikkel om maskinoversettelse, vennligst klikk her for å hoppe til originalartikkelen.

Utsikt: 17689|Svare: 4

[Nytt nummer] C# winform call js-problem

[Kopier lenke]
Publisert på 18.02.2020 10:30:34 | | |
Et C#-kall til JS-skjema funnet på Internett  
   offentlig streng GetTimeByJs()
        {
            Type obj = Type.GetTypeFromProgID("ScriptControl");
            hvis (obj == null) returnerer null;
            object ScriptControl = Activator.CreateInstance(obj);
            Obj. InvokeMember("Language", BindingFlags.SetProperty, null, ScriptControl, new object[] { "JavaScript" });
            streng js = "funksjonstid(a, b, msg){ var sum = a + b; returner ny Date().getTime() + ': ' + msg + ' = ' + sum }";
            Obj. InvokeMember("AddCode", BindingFlags.InvokeMethod, null, ScriptControl, new object[] { js });
            Returner Obj. InvokeMember("Eval", BindingFlags.InvokeMethod, null, ScriptControl, new object[] { "time(1, 2, '1 + 2')" }). ToString();
        }   


Testen er grei.
tid(1, 2, '1 + 2'), hvor parameterne som sendes inn er (nummer 1, nummer 2, streng 1+2).
Men det er et spørsmål, nytt objekt[] { "time(1, 2, '1 + 2')" }, hvis argumentet i JS-metoden er av typen byte[], hvordan skal det skrives når man kaller?





Foregående:SQLyog-12.0.9-0 med registreringskode
Neste:Ressursopplastingsanmeldelse
Publisert på 18.02.2020 10:56:17 |
JavaScript-datatyper kan deles inn i to kategorier:

primitiv type: f.eks. udefinert, null, boolsk type, tall, streng
Referansetypeverdi, det vil si objekttype: Objekttype, som Objekt, Array, Funksjon, Dato



Argumentene til JS-metoder har ikke byte[], alt er objekt
Bruk Jurassic til å kjøre js-funksjoner under .net
https://www.itsvse.com/thread-4303-1-1.html
(Kilde: Architect_Programmer)


 Vert| Publisert på 18.02.2020 14:10:18 |
Xiao Zhazha Publisert 2020-2-18 10:56
JavaScript-datatyper kan deles inn i to kategorier:

primitiv type: slik som udefinert, null, boolsk, numm ...

Ao er slikJeg vet ikke så mye om JS.
Hvis
Anta at tidsfunksjonsparameteren til js er et array
function time(Array ){....................}

Følg den siste setningen i denne C#-funksjonen
Returner Obj. InvokeMember("Eval", BindingFlags.InvokeMethod, null, ScriptControl, new object[] { "time(????)" }). ToString();

Jeg vil passere en Array   
var mycars = nytt array();
mycars[0] = "a";
mycars[1] = "b";
mycars[2] = "c";

Hvis du bare kaller JS på denne C#-kodeimplementeringen, bryr du deg ikke om andre kodemetoder. Det er i denne C#-koden??? Hvordan bør parametrene skrives?
Publisert på 18.02.2020 14:17:06 |
zncliving Publisert 18.02.2020 kl. 14:10
Ao: Det stemmer, jeg vet ikke så mye om JS.
Hvis
Anta at tidsfunksjonsparameteren til js er et array

Vel, jeg kan bare gi deg ideer, ikke hjelpe deg med å skrive kode

Du må fortsatt undersøke koden selv
 Vert| Publisert på 18.02.2020 14:35:32 |
Xiao Zhazha publisert 18.02.2020 kl. 14:17
Vel, jeg kan bare gi deg ideer, ikke hjelpe deg med å skrive kode

Du må fortsatt undersøke koden selv

Ok, jeg leter etter informasjon
Ansvarsfraskrivelse:
All programvare, programmeringsmateriell eller artikler publisert av Code Farmer Network er kun for lærings- og forskningsformål; Innholdet ovenfor skal ikke brukes til kommersielle eller ulovlige formål, ellers skal brukerne bære alle konsekvenser. Informasjonen på dette nettstedet kommer fra Internett, og opphavsrettstvister har ingenting med dette nettstedet å gjøre. Du må fullstendig slette innholdet ovenfor fra datamaskinen din innen 24 timer etter nedlasting. Hvis du liker programmet, vennligst støtt ekte programvare, kjøp registrering, og få bedre ekte tjenester. Hvis det foreligger noen krenkelse, vennligst kontakt oss på e-post.

Mail To:help@itsvse.com