0

ASP.NET ユーザー コントロール (.ascx ファイル) を使用して、アプリケーションを Web サイトにせずに、.NET アプリケーション内で独自のテンプレート ニーズを満たす方法はありますか?

実際には、データを取り込み、テンプレートと結合して吐き出すクラス ライブラリです。

独自のテンプレート システムをゼロから作成したくないので、必要に応じて ASP.NET 機能を再利用したいと考えています。

ASP.NET ユーザー コントロールのレンダリングは IIS に依存していると言われました。.NET クラス ライブラリで動作させるためのハックやトリックはありますか?

4

3 に答える 3

2

これはあなたにとって役に立つかもしれません...あなたが探しているものとは違うかもしれません..

VS 2005 で再利用可能な ASP.NET ユーザー コントロールとページ ライブラリを構築する

こちらもご覧ください

.ascx ユーザー コントロールを再配布可能なカスタム コントロールに変換する

于 2009-01-14T04:30:04.627 に答える
1

私が質問を適切にフォローしているかどうかは完全にはわかりませんが、テンプレートエンジンを探しているだけなら、キャッスルプロジェクトの一部であるNVelocityをチェックしてみてください。

次のようなテンプレートを作成できます (サイトの入門ガイドから抜粋):

From: $from
To: $to
Subject: $subject

Hello $customer.Name

We're please to yada yada yada.

そして、次のようにプロポーズします。

Template template = velocity.GetTemplate(@"path/to/myfirsttemplate.vm");
VelocityContext context = new VelocityContext();
context.Put("from", "somewhere");
context.Put("to", "someone");
context.Put("subject", "Welcome to NVelocity");
context.Put("customer", new Customer("John Doe") );

StringWriter writer = new StringWriter();
template.Merge(context, writer);
Console.WriteLine(writer.GetStringBuilder().ToString());
于 2009-01-14T04:58:24.897 に答える
0

Rajsh の回答に加えて、 .ascx ファイルを単一のアセンブリにプリコンパイルできる Visual Studio 用のWeb 配置プロジェクト テンプレートがあることを指摘したいと思います。

これにより、展開/インストール プロセスが簡素化されます。新しい ascx ファイルをコピー/同期する必要はなく、作成された DLL だけです。

MSDN の記事へのリンクは次のとおりです。

于 2009-01-14T07:34:46.063 に答える