2011-02-13 14 views
1

正如您可能从我以前的文章中看到的,我开始自学MVC和C#,因为现在是时候让我从一个设计师给开发者。我被告知不要在Visual Studio中使用服务器资源管理器,而只需使用web.config中的连接字符串连接到我的数据库。我已经这样做了,但很显然,Visual Studio中的LINQ to SQL Designer似乎并不知道或识别我的数据库连接,我不能只拖到设计器上来创建类。我必须手动创建这些内容还是缺少一些内容?如何在使用连接字符串时使用VS设计器创建Linq To SQL类

任何想法是appreicated。

干杯

马克

回答

0

我想我已经被设计者性质

1

DataContext类具有constructor,需要一个连接字符串参数中更改连接设置分类这一点。

0

您可以使用服务器资源管理器生成您的类,只需使用连接字符串中的详细信息填充服务器,数据库,身份验证字段。

然后,如shadowfoxmi所述,当您实例化DataContext类时,请使用带有连接字符串或预先设置的SqlConnection实例的构造函数。

我个人更喜欢有一个包含单个静态方法GetDataContext()的静态类,它返回一个DataContext实例已经设置了正确的连接字符串,超时等等。然后我确保没有代码手动实例化DataContext,而是所有实例都来自该静态方法。您可以使这种方法尽可能地复杂,例如,您可能会根据部署环境(例如分段,生产,本地开发等)使代码实例化具有不同连接字符串的DataContexts。

在部署中,根据您的需要,可能是一个好主意,以确保服务器资源管理器将放入您的app.config/web.config文件的详细信息将被删除。

0

我总是创造一个包装,确实是这样的:

public static class DBCreator 
{ 
    public static MyDataContext Create() 
    { 
     return new MyDataContext(ConfigurationManager.ConnectionStrings["ConnName"].ConnectionString); 
    } 
} 

然后用这个无处不在。您也可以添加重载以接受DataLoadOptions或其他任何您想要通过的内容。

HTH。

相关问题