2013-02-08 34 views
18

私はHtml.Label(文字列)を使用していくつかの文字列を出力しています。なぜHtml.Label()はピリオドで動作しませんか?

私はそれにピリオドとそれに値を渡すと、それはスペースが、何も

Html.Label(会社)

例えば<%: Html.Label("Bill Co.")%>

当社は動的な値である、それが動作する出力値が "Bill Co"であるが、 "Bill Co."でない場合には、その唯一の違いはその期間である。

私は、MSDN

public IHtmlString Label(
     string labelText 
    ) 

経由 HhtmlHelper.Labelあたりとしてそれに任意のアイデアを任意の文字列を渡すことができるはずですか?

+0

mircosoft sux – Jogi

答えて

3

ToHtmlString()を使用して、問題。

おかげ

+0

は 'ToHtmlString()'を 'Html.Label()'とどのように使用しましたか? – Nope

+0

それ自身ではない<%:company.ToHtmlString()%> – Fabii

3

Html.label()を使用する場合、パラメータは表示するプロパティを識別する式である必要があります。あなたのモデルにはBill Co.という名前の財産はないと思います。

あなたはこのようにそれを指定する必要があります。ラベルは<label>タグを使用してあなただけの出力に一定の値が必要な場合は

<%: Html.Label(model => model.Name)%> 

<%: Html.Label("Name")%> 

またはこの

<label>Bill Co.</label> 
+0

その動的値は、値が "Bill Co"であれば機能しますが、 "Bill Co."であれば機能しません。唯一の違いはその期間です。 – Fabii

+1

@Fabii:あなたはまだヘルパーを間違って使用しています。あなたはそれをプロパティ名として解釈しようとするので、定数文字列のようにそれを使用することは想定していません。偶然に '.'を指定しないとうまくいくということです。ドキュメントをリンクして、表示するプロパティを識別する式を期待していることも示しています。 – Nope

14

またHtml.label()を使用する場合、パラメータは属性の表示とするプロパティを特定の式にする必要がある

<%= Html.Label("","Bill Co.")%> 

を使用することができます。

+1

これは私に多くの時間を節約しました!ありがとう。 **注意:**これはRazor構文でも使用できます。つまり、@ Html.Label( ""、 "Bill Co。") ' - これは動作します(もちろん、ここでは次のようなプロパティも使用できます。 @Html.Label( ""、myObj.FirmName) '。これは範囲内にある必要があります。 – Matt

+1

私はこれまでに実行したことがないと信じられません。テキスト中にピリオドが含まれています。 –

関連する問題