1

HTTPListener クラスに基づいて小さな HTTP サーバーを構築しました。

私が知りたいのは、C# でネイティブに実行できる HTML ファイルに入れることができるスクリプト言語はありますか?

PHP が HTML コードと混合されたときの動作に似ています。

リー

4

3 に答える 3

1

使用できるものがあります: T4.

実行時にテンプレートを定義したい場合は、Microsoft.VisualStudio.TextTemplating への参照が存在する必要があります。それを実用的に使用する方法については、記事「カスタム ホストを使用してテキスト テンプレートを処理する」 (msdn) から学ぶことができます。

記事から:

テキスト テンプレートを実行するには、Microsoft.VisualStudio.TextTemplating.Engine の ProcessTemplate メソッドを呼び出します。

using Microsoft.VisualStudio.TextTemplating;
...
Engine engine = new Engine();
string output = engine.ProcessTemplate(templateString, host);

ホスト パラメーターでは、ITextTemplatingEngineHost を実装するクラスを指定する必要があります。これは、エンジンによってコールバックされます。

この方法により、プログラムにテンプレートをファイルから読み取らせたり、リソースからロードさせたりすることができます。

チュートリアル: カスタム テキスト テンプレート ホストの作成(msdn にもある)の記事は、インターフェイス ITextTemplatingEngineHost の実装に役立ちます。


別の方法として、事前に定義された固定テンプレートがある場合は、tt ファイルを作成し、次の方法を使用できます。

TestTemplate testTemplate = new TestTemplate();
string output = testTemplate.TransformText();

TestTemplate は、TestTemplate.tt ファイルから VisualStudio によって生成されたクラスです。このメソッドを使用すると、テンプレートはコンパイル時に修正されます。そのため、実行時に定義することはできません。たとえば、ファイルから読み取ることによって定義できます。

于 2013-03-10T09:06:24.063 に答える
1

WebForms、Razor など、.NET で利用可能なテンプレート エンジンを使用できます。

于 2013-03-10T08:31:45.343 に答える
0

シンプルなものが必要な場合は、T4 テンプレートをご覧になることをお勧めします。ここここから始められます

于 2013-03-10T09:01:28.390 に答える