2017-04-19 94 views
0
string q1 = "What [replace string] years? "; 

In the above question I want to replace "years of study" with `model.values` 
so my required output should be as: 

    string q1 = "What [replace string] years?"; 

其中「2013,2014」將來自數據庫。如何在c#中的特定位置替換字符串?

所以我需要附加值到靜態問題,值將來自數據庫使用mvc模型。

如何在一個特定的位置替換字符串我堅持有任何建議它會幫助我提前感謝。

+3

Model.values的類型是什麼? – Fran

+0

@Fabjan我會使用string.Join(「,」,Model.values)。取決於Model中值的數量,它可能更高效,因爲它在內部使用StringBuilder。你的方法將會爲循環的迭代創建一個新的字符串。 – Fran

回答

2

使用的String.format()

改變你Q1聲明此

string q1 = "What type of legal entity was the Company during the {0} tax years? "; 

然後格式化字符串

var q2 = string.Format(q1, <replacement string>); 

<replacement string>是值你代

所以,

var q2 = string.Format(q1, model.Values); 

documentation MSDN上

+0

它的工作,但很小的疑問,我需要追加更多的價值,如 –

+0

什麼類型的法人是公司在2013,2014,2016稅年如這些 –

+0

需要檢查空或空 –

1

你可以用$ C#6.0的功能

$"What type of legal entity was the Company during the {Model.values} tax years? " 
0

嘗試這樣的: -

string q2= String.Format("What type of legal entity was the Company during the {0} tax years? ", YourModelName.Years); 
0

您可以嘗試string.Replace

string q1 = "What type of legal entity was the Company during the [years of the study] tax years? "; 
q1 = q1.Replace("[years of the study]", someValue.ToString()); 

但是,這不是一個很好的做法。使用string.Format,正如其他人所建議的那樣更好。

相關問題