select count(1) from Attribute_Item where AttributeSysNo=$AttributeSysNo and Name='$Name' and SysNo !=$SysNo
以上字符串中包含了"$"符號,"$"替換了傳統的"{0}"格式.所以在長字符串時,使用對象化格式化字符串是很是方便的,不用再數數了.實現邏輯以下:sql
//方法位於靜態類中進行調用 /// <summary> /// 對象字符串格式化 /// </summary> /// <param name="paramValues">參數對象</param> /// <returns>格式化後的字符串</returns> public static string Format(this string sourceString, Object paramValues) { foreach (System.Reflection.PropertyInfo property in paramValues.GetType().GetProperties()) { object parseValue = property.GetValue(paramValues, null); sourceString = sourceString.Replace("$" + property.Name, parseValue == null ? string.Empty : parseValue.ToString()); } return sourceString; }
只須要進行以下調用便可實現字符串格式化:學習
sql.Format(new { AttributeSysNo = model.AttributeSysNo, Name = model.Name, SysNo = model.SysNo.TryInt(0) })
C#6.0的格式化方法this
var name="小明"; $"你好,我是{name}";
當你的項目還處於C#6.0如下的版本時,你能夠使用個人格式化方法。spa
var strpams=new { Name="小明"}; "你好,我是$Name".Format(strpams);
本帖感謝你們多提意見,互相增進學習,謝謝!code