HTTPListener クラスに基づいて小さな HTTP サーバーを構築しました。
私が知りたいのは、C# でネイティブに実行できる HTML ファイルに入れることができるスクリプト言語はありますか?
PHP が HTML コードと混合されたときの動作に似ています。
リー
使用できるものがあります: 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 によって生成されたクラスです。このメソッドを使用すると、テンプレートはコンパイル時に修正されます。そのため、実行時に定義することはできません。たとえば、ファイルから読み取ることによって定義できます。
WebForms、Razor など、.NET で利用可能なテンプレート エンジンを使用できます。