私はC#TBB(C#コード断片)を作成しています。そのためには、私はユーザー定義のメソッドを記述する必要があります。 <%を使って作成しようとしました! %>コード内のユーザー定義メソッドにアクセスする方法。前もって感謝します。この問題を解決する方法を教えてください。C#TBB(C#コードフラグメント)でユーザー定義メソッドを追加する方法は?
答えて
TOM.NET APIリファレンスは、次の例を提供上記に加え
<%@ Import Namespace="Tridion.ContentManager.Publishing"%>
<%!
private string ExtraString()
{
return "Something added by the C# template";
}
%>
log.Debug("Executing C# template");
if (engine.RenderMode == RenderMode.Publish)
{
package.GetByName(Package.OutputName).AppendToStringValue(ExtraString());
}
を、以下の構文がサポートされています
<%@Import Namespace="..." %>
はに引用符の間に囲まれた名前空間をインポートコードフラグメント。インポートするクラスはすべて、グローバルアセンブリキャッシュに存在する必要があります。
<%! ... %>
残りのコードフラグメントが使用するためのメソッド、定数およびクラスを宣言します。宣言には文字列 '%>'を含めることはできません。作成するクラスは、コードフラグメント内でのみ参照できることに注意してください。
<%RunTemplate Template="tcm:1-184-2048" Class="Tridion.Templating.Examples.ExampleTemplateClass"%>
Template属性のURIで識別される特定の.NETアセンブリテンプレートビルディングブロックを実行します。このステートメントは、通常、.NETアセンブリをアップロードするときにSDL Tridion 2009自体によって生成され、.NETアセンブリ内の特定のクラスへのアクセスを提供します。
<%@Assembly Name="System.Drawing, Version=2.0.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a"%>
グローバルアセンブリキャッシュに存在する必要がある非標準.NETアセンブリへの参照を挿入します。完全なアセンブリ名を使用します。
reference linkの例は、Nickolが指し示す例です。
C#コードフラグメントの関数とクラスの作成の詳細については、以下のリンクを参照してください。
機能: https://rcnitesh.wordpress.com/2015/04/23/functions-in-c-tbb/
[コードサンプルを含む完全な詳細については、上記のリンクをチェック]クラス:
:以下
https://rcnitesh.wordpress.com/2015/04/24/creating-user-defined-classes-in-c-code-fragment/ 上記のブログからの抜粋です。
クラスはC#Coコンストラクトを使用してフラグメント:<%! %>
。
このユーザー定義クラスは、C#コードフラグメントをコンパイルするときにTridionによって作成されたPREDEFINED CLASSのネストクラスとして配置されます。 C#コードフラグメントのコンパイルと定義済みクラス、tridionによって生成されたメソッド、およびTridionの事前定義されたクラスとC#コードフラグメントのユーザー定義クラスとの関係の詳細については、このブログ記事を参照してください。
上記理解する必要があるのは、C#コードフラグメント内のユーザー定義クラスは、ログ、エンジン、パッケージなどの事前定義された変数にアクセスできないということです。
[コードサンプルを含む完全な詳細については、上記のリンクをチェック]
- 1. C++で変数のユーザー定義型変換を追加する方法は?
- 2. Cのユーザー定義の後にプログラム内にファイル名を追加する方法
- 3. C#TBBのTridionにサードパーティのDLLを追加するには?
- 4. ユーザー定義のアイコンをIonic2に追加する方法は?
- 5. 標準オブジェクトとユーザー定義オブジェクトを追加する方法は?
- 6. c/C++で定数配列を定義する方法は?
- 7. Apache Stormでユーザー定義関数を追加する方法
- 8. winformでユーザー定義のテキストボックスにツールチップを追加する方法
- 9. Apache camelでユーザー定義のrfh2ヘッダーを追加する方法
- 10. Jquery&Ajaxのユーザー定義クラス(C#&ASP.Net)でメソッドを呼び出す方法
- 11. VSコードでC#のユーザー定義ハイライトを作成する方法
- 12. Cで戻り値のないメソッドを定義する方法
- 13. C++でテンプレートクラスのメソッドを定義する
- 14. ラムダ記法によるC#メソッド定義
- 15. Cヘッダ#を定義する方法powershellで定義する
- 16. C#:WCF認証、ユーザー名+ SSLを追加する方法?
- 17. C++ TBB concurrent_bounded_queue - ポップタイムアウト
- 18. C#-delegate配列 - tostringメソッドを追加する方法
- 19. Swagger API定義のC#クライアントコードにデフォルトの引数値を追加する方法
- 20. C#visual studioでポリシー設定を追加する方法
- 21. C#:F#で "with"として拡張メソッドを定義する方法は?
- 22. C++ 11ユーザー定義のリテラル
- 23. BOOST_AUTOとC++ユーザー定義型
- 24. C#、ユーザー定義の式
- 25. C#コードフラグメントの最適化
- 26. C#:Windowsフォームの[プロパティ]タブにユーザー定義のプロパティを追加します。
- 27. グラフィックをC++に追加する方法
- 28. CファイルでC++メソッドを定義できますか?
- 29. Scrapyクラスでの追加メソッドの定義
- 30. C#コンソールアプリケーションでユーザー入力を追跡する方法は?
あなたはからこれを得たドキュメントのページへのリンクを提供してくださいできますか? –