Šis straipsnis yra veidrodinis mašininio vertimo straipsnis, spauskite čia norėdami pereiti prie originalaus straipsnio.

Rodinys: 17689|Atsakyti: 4

[Naujas numeris] C# winform skambučio js problema

[Kopijuoti nuorodą]
Paskelbta 2020-02-18 10:30:34 | | |
Internete rasta C# iškvietimo į JS schema  
   viešoji eilutė GetTimeByJs()
        {
            Tipas obj = Type.GetTypeFromProgID("ScriptControl");
            if (obj == null) grąžina null;
            objektas ScriptControl = Activator.CreateInstance(obj);
            Tikslas. InvokeMember("Kalba", BindingFlags.SetProperty, null, ScriptControl, naujas objektas[] { "JavaScript" });
            string js = "function time(a, b, msg){ var sum = a + b; grąžinti naują Date().getTime() + ': ' + msg + ' = ' + suma }";
            Tikslas. InvokeMember("AddCode", BindingFlags.InvokeMethod, null, ScriptControl, naujas objektas[] { js });
            grįžti obj. InvokeMember("Eval", BindingFlags.InvokeMethod, null, ScriptControl, new object[] { "time(1, 2, '1 + 2')" }). ToString();
        }   


Testas yra geras.
time(1, 2, '1 + 2'), kur perduodami parametrai yra (skaičius 1, skaičius 2, eilutė 1+2).
Bet yra klausimas, naujas objektas[] { "time(1, 2, '1 + 2')" }, jei JS metodo argumentas yra baito tipo[], kaip jis turėtų būti rašomas skambinant?





Ankstesnis:SQLyog-12.0.9-0 su registracijos kodu
Kitą:Išteklių įkėlimo peržiūra
Paskelbta 2020-02-18 10:56:17 |
JavaScript duomenų tipus galima suskirstyti į dvi kategorijas:

primityvus tipas: pvz., Neapibrėžtas, Nulinis, Bulio logika, Skaičius, Eilutė
Nuorodos tipo reikšmė, t. y. objekto tipas: objekto tipas, pvz., Objektas, Masyvas, Funkcija, Data



JS metodų argumentai neturi baito[], viskas yra objektas
Naudokite "Jurassic", kad vykdytumėte js funkcijas .net
https://www.itsvse.com/thread-4303-1-1.html
(Šaltinis: Architect_Programmer)


 Savininkas| Paskelbta 2020-02-18 14:10:18 |
Xiao Zhazha Publikuota: 2020-2-18 10:56
JavaScript duomenų tipus galima suskirstyti į dvi kategorijas:

primityvus tipas : pvz., Neapibrėžtas, Nulinis, Bulio logika, Numb ...

Ao yra toksAš nežinau daug apie JS.
Jei
Tarkime, kad js laiko funkcijos parametras yra masyvas
function time(Masyvas) {....................}

Sekite paskutinį šios C# funkcijos sakinį
grįžti obj. InvokeMember("Eval", BindingFlags.InvokeMethod, null, ScriptControl, new object[] { "time(????)" }). ToString();

Noriu perduoti masyvą   
var mycars = naujas masyvas();
mycars[0] = "a";
mycars[1] = "b";
mycars[2] = "c";

Jei skambinate JS tik dėl šio C# kodo įgyvendinimo, jums nerūpi kiti kodo metodai. Tai yra šiame C# kode??? Kaip turėtų būti rašomi parametrai?
Paskelbta 2020-02-18 14:17:06 |
zncliving Publikuota: 2020-2-18 14:10
Ao: Teisingai, aš nedaug žinau apie JS.
Jei
Tarkime, kad js laiko funkcijos parametras yra masyvas

Na, aš galiu tik duoti jums idėjų, o ne padėti jums parašyti kodą

Vis tiek turite patys ištirti kodą
 Savininkas| Paskelbta 2020-02-18 14:35:32 |
Xiao Zhazha Publikuota: 2020-2-18 14:17
Na, aš galiu tik duoti jums idėjų, o ne padėti jums parašyti kodą

Vis tiek turite patys ištirti kodą

Gerai, ieškau informacijos
Atsakomybės apribojimas:
Visa programinė įranga, programavimo medžiaga ar straipsniai, kuriuos skelbia Code Farmer Network, yra skirti tik mokymosi ir mokslinių tyrimų tikslams; Aukščiau nurodytas turinys negali būti naudojamas komerciniais ar neteisėtais tikslais, priešingu atveju vartotojai prisiima visas pasekmes. Šioje svetainėje pateikiama informacija gaunama iš interneto, o ginčai dėl autorių teisių neturi nieko bendra su šia svetaine. Turite visiškai ištrinti aukščiau pateiktą turinį iš savo kompiuterio per 24 valandas nuo atsisiuntimo. Jei jums patinka programa, palaikykite autentišką programinę įrangą, įsigykite registraciją ir gaukite geresnes autentiškas paslaugas. Jei yra kokių nors pažeidimų, susisiekite su mumis el. paštu.

Mail To:help@itsvse.com