[英]null and string interpolation in C# 6
我正在使用新的C#6.0功能“字符串插值”來生成SQL語句。
$@"INSERT INTO [dbo].[TableName]([Column1], [Column2]) Values({item.property1}, {item.property2})";
如果屬性為null,則生成的SQL如下
INSERT INTO [dbo].[TableName]([Column1], [Column2]) Values(,)
這會導致錯誤。 (錯誤的SQL)。
我需要Null而不是空白。 我能以某種方式實現這一目標嗎?
{Convert.ToString(item.property1) ?? "NULL"}
{Convert.ToString(item.property1) ?? "NULL"}
應該做到這一點。 這仍然是無效的,因為您需要非常特定的格式才能正確顯示SQL。 您可以自己解決格式問題。
注釋中已經給出了通常的SQL注入免責聲明。 這種方法是不可挽回的。 您需要扔掉它。
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.