2017-01-03 5 views
0

TypeScriptと混在するMVCプロジェクトがあります。 C#クラスから文字列を取得するには、TypeScriptオブジェクトが必要です。typescriptクラスでのC#静的文字列の使用

私はStringBuilderから文字列を生成するc#staticクラスを持っています。 私はこの文字列にアクセスするために必要なtypescriptクラスを持っています。 は、だから私のことができるようにしたいと思い活字体クラスの私のコンストラクタで:

this.element.append(MyCSharpStaticString); 

私はこれを行うことができます方法はありますか?

関連するコード

CSHTML

<div id="GridDiv"></div> 

<script type="text/javascript"> 
    jQuery(function() {   
     new Jobber.OrdersGrid($('#GridDiv'), {}).init(); 

     Q.initFullHeightGridPage($('#GridDiv')); 

    }); 
</script> 

typescriptです:

<script> 
this.element.append('@MyCsharpStaticString()'); 
</script> 

export class OrdersGrid extends Serenity.EntityGrid<OrdersRow, any> { 

protected getHeaderHtml(reportName) { return OrderHeaderHtml.HtmlHeader(reportName); } 

     constructor(container: JQuery) { 
      super(container); 

      // Finds this element in the code and adds our HTML 
      this.element.find('.grid-container').prepend(this.getHeaderHtml("")); 

     } 
} 
+0

あなたは 'Razor'を使用していますか? –

+0

どのようなUI技術を使用しているかはわかりませんが、どのような回答が得られるかに影響します。誰かが 'asp.net-mvc'タグを追加しましたが、それはあなたではないので、明確にする必要があります。 –

+0

@MikeMcCaughan [razor](http://stackoverflow.com/questions/tagged/razor)は別のタグです(追加されていません)... asp.net-mvcはサーバー側で、UIとは関係ありません... btwあなたは剃刀なしでasp.net-mvcを使用することができます –

答えて

0

それは文字列を返していた場合は以下のようにJavaScriptのメソッドにバインドすることができますBeモデルをあなたのかみそりのビューに含めてください。

+1

あなたの答えに引用符がないと思う:this.element.append( '@ MyCsharpStaticString'); –

+0

@CemMutluああ、ありがとう=) – Valkyrie

+0

質問にRazorが使用されていることを示すものは何もありません。あなたがそれを前提とし、あなたの前提に基づいて質問を編集した理由はありますか? –

関連する問題