我想格式化短語,並根據項目的數量做結尾。c#內嵌切換格式字符串
string s = string.Format("There are {0} items, bla bla {1}",
itemsCnt,
() => {switch(itemsCnt)
{
case 0:
return "make some...";
case 1:
case 2:
return "try more";
default:
return "enough";
}}
);
的語法是不正確的,我相信匿名方法應該在這裏莫名其妙地工作...
更新:
我可以使用單獨的格式化功能。我想在Razor中使用這個函數,我希望看到在一個地方合成邏輯。進而我很好奇,怎麼辦呢:-)
似乎是在做一個過於複雜的方式它。爲什麼不在你的賦值/格式化語句之前用switch語句調用它來計算「結尾」? – RenniePet 2014-08-31 11:33:23
string.Format沒有佔用並執行Func對象的重載。它只是調用params數組中對象的ToString()方法,這對於Func對象通常沒有多大意義。 – chris 2014-08-31 11:40:00