2016-09-29 39 views
0

我有一個表單,我希望輸入的名稱是變量表示的星期幾,然後是Beg,例如如果它代表星期天它應該是SundayBeg。把第一個變量和文本放在一起

name='@l.Day"+ Beg"' 

我該怎麼做?

+0

變種名稱=的String.Format( 「{0}求」,System.DateTime.Now.DayOfWeek) – Nair

回答

2

如果你只想把它變成像你比如一個字符串,並假設l.Day是要與「求」來串聯值...

var name = $"{l.Day}Beg"; 

編輯:有人指出,字符串插值在Razor視圖中播放效果不佳。我將這個例子留給子孫後代,但是從下面的例子中刪除它。

或者,如果你不使用C#6 ...

var name = string.Format("{0}Beg", l.Day); 

然後你只需要你想去的地方顯示的name值。根據你的例子,我猜你想要使用該值作爲某個HTML元素的name屬性。所以你可以這樣做:

<input name="@name" ... /> 

你也可以做所有的內聯代替使用變量。

<input name="@string.Format("{0}Beg", l.Day)" ... /> 
+0

我沒有意識到他正在使用Razor語法 - 如果他要使用@name並在需要它的地方使用,我的答案也能起作用嗎?總有一些方法可以做到! – confusedandamused

+0

當我嘗試這個時,name =「@ $」{l.Day} Beg「」,我得到這個「$」在代碼塊的開始是無效的。但第二個工程。那謝謝啦!! –

+0

@confusedandamamused是的,這並不明顯。我認識到的唯一原因是他用MVC標籤發佈了這個問題,以及他對@符號的使用。你也可以工作,但我認爲在形成或構建或連接字符串時使用「+」很少是正確的。使用字符串插值或'string.Format()'是可取的。 –

0

var name = System.DateTime.Now.DayOfWeek + " Beg"

假設你正在使用的一週中的當前天。

Docs Here

+0

嗯我想我不清楚。不是一個變量。輸入字段中的名稱屬性。 –

+0

ToString是多餘的。 – CSharpie

+0

@CSharpie刪除 - 謝謝! – confusedandamused