0

我有这样的代码:

var newMsg = new Msg
{
    Var1 = var1,
    Var2 = var2
};

using (AppDataContext appDataContext = new AppDataContext(ConnectionString))
{
    appDataContext.CClass.InsertOnSubmit(newMsg);
    appDataContext.SubmitChanges();
}

读完这篇文章后,我相信同样的逻辑也适用。

有人认为这会受到 SQL 注入攻击吗?

4

3 回答 3

5

您引用的帖子中的第二个答案说:

LINQ to SQL 使用带参数的execute_sql 。

它不会将属性值连接到一个大的 INSERT ... VALUES('...', '...')

于 2008-10-12T22:04:12.663 回答
3

DataContext 的底层操作是通过使用参数化 SQL 的 SqlCommand。

因此,您的插入语句将如下所示:

INSERT INTO [MSG] [Var1] = @p1, [Var2] = @p2
于 2008-10-12T23:39:55.793 回答
1

不,但无论如何您都应该验证用户数据。

于 2008-10-12T22:53:40.083 回答