2009-03-28 27 views
5

Tôi đang chạy ASP.NET MVC trên một máy chủ được chia sẻ và tôi đang gặp sự cố khi kết nối với SQL qua System.Data.EntityClient. Dưới đây là chuỗi kết nối mà nhà cung cấp hosing của tôi đã cho tôi kết nối với SQL và VS được cấu hình cho máy cục bộ của tôi trong quá trình phát triển, chuỗi kết nối của tôi trông như thế nào khi triển khai đến máy chủ?ASP.NET System.Data.EntityClient chuỗi kết nối giúp

Từ nhà cung cấp hosting của tôi:

<add name="WeddingsDBEntities" 
    connectionString="data Source=<server name>; Initial Catalog=<db name>; User ID=<user ID>; Password=<password>;" 
    providerName="System.Data.EntityClient"/> 

Từ VS (quá trình phát triển):

connectionString="metadata=res://*/Models.WeddingsModel.csdl|res://*/Models.WeddingsModel.ssdl|res://*/Models.WeddingsModel.msl;provider=System.Data.SqlClient;provider connection string="Data Source=.\SQLEXPRESS;AttachDbFilename=|DataDirectory|\WeddingsDB.mdf;Integrated Security=True;User Instance=True;MultipleActiveResultSets=True"" providerName="System.Data.EntityClient" 

Cảm ơn!

Trả lời

7

Bạn phải quấn chuỗi kết nối instide một chuỗi kết nối thực thể mà là ở định dạng của

<add name="Name" 
    connectionString="metadata=<Conceptual Model>|<Store Model>|<Mapping Model>; 
    provider=<Underlying Connection Provider>; 
    provider connection string=&quot;<Underlying ConnectionString>&quot;" 
    providerName="System.Data.EntityClient"/> 

Thay vì:

<add name="WeddingsDBEntities" 
    connectionString="data Source=<server name>; Initial Catalog=<db name>; User ID=<user ID>; Password=<password>;" 
    providerName="System.Data.EntityClient"/> 

Sử dụng này:

<add name="WeddingsDBEntities" 
    connectionString="metadata=res://*/Models.WeddingsModel.csdl|res://*/Models.WeddingsModel.ssdl|res://*/Models.WeddingsModel.msl;provider=System.Data.SqlClient;provider connection string=&quot;data Source=<server name>; Initial Catalog=<db name>; User ID=<user ID>; Password=<password>;MultipleActiveResultSets=True&quot;" 
    providerName="System.Data.EntityClient"/> 
+0

Cảm ơn. Ok, do đó, làm việc, mặc dù bây giờ tôi nhận được một lỗi 500 - "Có một vấn đề với các nguồn tài nguyên bạn đang tìm kiếm, và nó không thể được hiển thị.". Có thể có điều gì đó sai với đường dẫn res: // không? tại sao họ bắt đầu với '* /'? – Birdman

+0

Bạn đã thay thế nguồn dữ liệu, dbname, userid và mật khẩu? – bendewey

+0

Hãy thử tắt phần cuối của chuỗi kết nối nhà cung cấp có nội dung MultipleResultSets = true; – bendewey

0

Thay đổi nhà cung cấp từ entityclient thành sqlclient (giả sử mã EF đầu tiên).

providerName = "System.Data.EntityClient" />

để

providerName = "System.Data.SqlClient" />

Các vấn đề liên quan