如何在ServiceStack.OrmLite中使用参数执行SQL语句?

yo2*_*011 0 c# servicestack ormlite-servicestack

我想在ServiceStack ormlite中使用paraemeters执行SQL语句

String.Format("SELECT OBJECT_ID(@name)", name);
Run Code Online (Sandbox Code Playgroud)

我想要最好的方式.

Sco*_*ott 5

您可以使用SqlScalar<T>其中Tint.然后只需使用您的参数传递一个匿名对象.

int result = db.SqlScalar<int>("SELECT OBJECT_ID(@name)", new { name = "SomeName" });
Run Code Online (Sandbox Code Playgroud)

选择一个List<T>POCO类型而不是int你可以使用的:

var results = db.SqlList<User>("SELECT * FROM Users WHERE Name = @name", new { name = "SomeName" });
Run Code Online (Sandbox Code Playgroud)

您可以在官方文档示例中阅读更多内容.

希望这可以帮助.