使用EF6调用控制台中的存储过程应用程序时出现问题



我试图在控制台应用程序中执行一个存储过程,但得到的是我要调用的语句的打印。

我创建的存储过程:

create proc Checked
@Links nvarchar(MAX)
as
SELECT CASE 
WHEN EXISTS (
SELECT ID
FROM News
WHERE LinkNews = @Links
)
THEN CAST(1 AS BIT)
ELSE CAST(0 AS BIT) END

以及我用来调用控制台应用程序中存储过程的方法:

using (DbContextClass db = new DbContextClass())
{
SqlParameter p = new SqlParameter("@Links", "http://www.newsline-ye.com/news7527.html");
IEnumerable<New> n = db.Database.SqlQuery<New>("exec Checked @Links", p);
Console.WriteLine(n);               
}
Console.ReadKey();

我的问题它给了我这个输出"exec-Checked@Links"句子

有人能帮我解决问题吗?

List<SqlParameter> sqlParameters = new List<SqlParameter>()
{
new SqlParameter("Links", p);
}
string query = "EXECUTE Checked @Links";
var result = db.Database.SqlQuery<bool>(query, sqlParameters.ToArray());

最新更新