0

Javascript に出力するSharpKitを使用して HTML パーサーを作成しています。しかし、バイナリを出力するCsQueryで同じコードを時々実行したいと考えています。

SharpKit 用に私が持っているコードは、CsQuery でほとんど直接使用できますが、次のように完全ではありません。

  • 名前空間を変更する必要があり、それに応じて関数/クラス名も変更されます。
  • また、CsQuery コードではまったく必要のない Sharpkit の .NET クラスをエミュレートするクラスもいくつかあります。

これらの変更をプログラムで実行することで、コードの同期を維持できるようにしたいと考えています。これは可能ですか?ここでのソリューションは古すぎて C# 4.0 で動作しませんが、Rosalyn はこれを実行できるはずだと思います。

4

1 に答える 1

0

JsMethodAttribute を使用して、SharpKit のメソッドの名前を変更できます。

[JsMethod(Name="doSomething")]
public void DoSomething(){}

Export=false を設定することで、同じ方法でメソッドを除外できます。

[JsMethod(Export=false)]
public void DoSomething(){}

Clr モードを使用する場合は、まったく同じコードを使用できるはずです (jsclr.js ライブラリが必要です)。または、ネイティブの Js および .NET メソッドを使用して、JavaScript で欠落しているメソッドを拡張します。たとえば、JavaScript に String.StartsWith メソッドがない場合は、別のメソッドにルーティングするか、拡張メソッドを使用して自分で実装できます。 .

より広範なヘルプとコード サンプルについては、SharpKit フォーラムをお試しください: https://groups.google.com/forum/#!forum/sharpkit

于 2013-03-21T08:15:33.553 に答える