Tento článok je zrkadlovým článkom o strojovom preklade, kliknite sem pre prechod na pôvodný článok.

Pohľad: 17689|Odpoveď: 4

[Nové číslo] Problém s C# winform volaním js

[Kopírovať odkaz]
Zverejnené 18. 2. 2020 10:30:34 | | |
C# výzva do JS schémy nájdená na internete  
   public string GetTimeByJs()
        {
            Type obj = Type.GetTypeFromProgID("ScriptControl");
            ak (obj == null) vráť null;
            object ScriptControl = Activator.CreateInstance(obj);
            Obj. InvokeMember("Language", BindingFlags.SetProperty, null, ScriptControl, new object[] { "JavaScript" });
            reťazec js = "funkcia čas(a, b, msg){ var sum = a + b; return new Date().getTime() + ': ' + msg + ' = ' + sum }";
            Obj. InvokeMember("AddCode", BindingFlags.InvokeMethod, null, ScriptControl, new object[] { js });
            Vráťte cieľ. InvokeMember("Eval", BindingFlags.InvokeMethod, null, ScriptControl, new object[] { "time(1, 2, '1 + 2')" }). ToString();
        }   


Test je v poriadku.
čas(1, 2, '1 + 2'), kde parametre prenesené do sú (číslo 1, číslo 2, reťazec 1+2).
Ale je tu otázka, nový objekt[] { "time(1, 2, '1 + 2')" }, ak je argument JS metódy typu byte[], ako by mal byť zapísaný pri volaní?





Predchádzajúci:SQLyog-12.0.9-0 s registračným kódom
Budúci:Recenzia nahrávania zdrojov
Zverejnené 18. 2. 2020 10:56:17 |
JavaScriptové dátové typy možno rozdeliť do dvoch kategórií:

Primitívny typ: napr. Nedefinovaný, Null, Boolean, Number, String
Referenčná hodnota typu, teda typ objektu: Typ objektu, ako napríklad objekt, pole, funkcia, dátum



Argumenty JS metód nemajú bajt[], všetko je objekt
Využite Jurassic na vykonávanie js funkcií pod .net
https://www.itsvse.com/thread-4303-1-1.html
(Zdroj: Architect_Programmer)


 Prenajímateľ| Zverejnené 18. 2. 2020 14:10:18 |
Xiao Zhazha Zverejnené 18.2.2020 10:56
JavaScriptové dátové typy možno rozdeliť do dvoch kategórií:

primitívny typ: ako nedefinovaný, nulový, booleovský, otupený ...

Ao je takýO JS toho veľa neviem.
Ak
Predpokladajme, že parameter časovej funkcie js je pole
function time(Array ){....................}

Nasledujte poslednú vetu tejto C# funkcie
Vráťte cieľ. InvokeMember("Eval", BindingFlags.InvokeMethod, null, ScriptControl, new object[] { "time(????)" }). ToString();

Chcem prejsť cez pole   
var mycars = nový Array();
mycars[0] = "a";
mycars[1] = "b";
mycars[2] = "c";

Ak voláte JS len na túto implementáciu C# kódu, ostatné metódy kódu vás nezaujímajú. To je v tomto C# kóde??? Ako by mali byť parametre napísané?
Zverejnené 18. 2. 2020 14:17:06 |
zncliving Zverejnené 18.2.2020 o 14:10
Ao: Presne tak, o JS toho veľa neviem.
Ak
Predpokladajme, že parameter časovej funkcie js je pole

No, môžem ti len dávať nápady, nie ti pomáhať písať kód

Stále si musíte kód sami preskúmať
 Prenajímateľ| Zverejnené 18. 2. 2020 14:35:32 |
Xiao Zhazha Zverejnené 18.2.2020 o 14:17
No, môžem ti len dávať nápady, nie ti pomáhať písať kód

Stále si musíte kód sami preskúmať

Dobre, hľadám informácie
Vyhlásenie:
Všetok softvér, programovacie materiály alebo články publikované spoločnosťou Code Farmer Network slúžia len na vzdelávacie a výskumné účely; Vyššie uvedený obsah nesmie byť použitý na komerčné alebo nezákonné účely, inak nesú všetky následky používateľmi. Informácie na tejto stránke pochádzajú z internetu a spory o autorské práva s touto stránkou nesúvisia. Musíte úplne vymazať vyššie uvedený obsah zo svojho počítača do 24 hodín od stiahnutia. Ak sa vám program páči, podporte originálny softvér, zakúpte si registráciu a získajte lepšie originálne služby. Ak dôjde k akémukoľvek porušeniu, kontaktujte nás prosím e-mailom.

Mail To:help@itsvse.com