C# 访问 SQL Server 数据库存储过程和视图

Posted

技术标签:

【中文标题】C# 访问 SQL Server 数据库存储过程和视图【英文标题】:C# access to SQL Server database stored procedures and views 【发布时间】:2015-12-11 09:33:59 【问题描述】:

在我的 C# 应用程序中,我需要访问 SQL Server 数据库。但仅限于一些视图和一些存储过程。是否建议使用实体框架?还是有一些轻量级的方法来获得访问权限?

【问题讨论】:

EF 现在已经相当不错了——看看吧!如果你觉得它太笨重,你可以随时查看Dapper.NET(顺便说一下,这里是用来为这个网站提供动力的——***) 【参考方案1】:

是否推荐使用实体框架?

是的。

或者有一些轻量级的方法来获取访问权限?

这就是我相信的实体框架。

实体框架 + LINQ to SQL = 魔术。

【讨论】:

我第一次在其他项目中使用实体框架,但首先使用模型生成我自己的数据库。所以现在我只需要访问一个已经存在的数据库。模型或代码优先不起作用。我首先需要数据库。但我无法访问完整的数据库,只有一些视图和存储过程。我现在不知道如何开始。 这可能对你有帮助:codeproject.com/Tips/1056400/…【参考方案2】:

ADO.NET 比 EF 快很多,没有难度

using (SqlConnection conn = new SqlConnection("Data Source=.; Initial Catalog=DBNAME; Integrated Security=true;"))

    conn.Open();

    using (SqlCommand cmd = new SqlCommand("SELECT ID, NAME FROM VIEWNAME where id > 4550;", conn))
    
        // cmd.CommandType = CommandType.StoredProcedure // for SP
        using (SqlDataReader dr = cmd.ExecuteReader())
        
            while (dr.Read())
            
                dictionary.Add(dr.GetInt32(0), dr.GetString(1));
            
        
    

连接字符串更好地存储在 app.config 中

【讨论】:

以上是关于C# 访问 SQL Server 数据库存储过程和视图的主要内容,如果未能解决你的问题,请参考以下文章

C#与sql server数据库存储过程的操作实例

使用 C# 和存储过程从 SQL Server 检索 VarChar(MAX)

在SQL Server数据库中执行存储过程很快,在c#中调用很慢的问题

C#操作SQL Server数据库

SQL Server 的 CLR 存储过程是不是需要访问数据库?

[转]C#操作SQL Server数据库