我用谷歌搜索但找不到这个问题的答案:

我知道 c# 中的多行字符串。但是我怎样才能创建一个像这样的字符串:

string temp = @"DECLARE @rolename varchar(max)
SET @rolename ='***'
EXEC sp_addrolemember N'db_execute',@rolename"

* 表示在那里我必须删除一个具有某些值的变量,例如 (object.variable)。

这可能吗??

最佳答案

您可以使用 string.Format :

string temp = @"DECLARE @rolename varchar(max)
SET @rolename ='{0}'
EXEC sp_addrolemember N'db_execute',@rolename";

string result = string.Format(temp, object.variable);

请注意,如果 object.variable 是(或将来可能是)用户定义的变量,则您对 sql 注入(inject)攻击持开放态度。

关于c#多行字符串允许变量调用,我们在Stack Overflow上找到一个类似的问题:https://stackoverflow.com/questions/18355584/

10-11 15:52