برای امنیت بیشتر در ذخیرهسازی نام کاربری و رمزعبور اتصال به دیتابیس راههای زیادی هست، که یکی از آنها قرار دادن مشخصات ConnectionString در کد به جای فایل WebConfig است. برای این کار قطعه کد زیر را در کلاسی که از DbContext ارث میبرد قرار داده و آن را فراخوانی نمایید.
public static MyPassEntities Create() { SqlConnectionStringBuilder sqlConnection = new SqlConnectionStringBuilder() { DataSource = "192.168.1.1", InitialCatalog = "project", UserID = "user", Password = "pass" }; EntityConnectionStringBuilder EFconnection = new EntityConnectionStringBuilder() { ProviderConnectionString = sqlConnection.ToString(), Provider = "System.Data.SqlClient", Metadata = @"res://*/DbModel.Model1.csdl|res://*/DbModel.Model1.ssdl|res://*/DbModel.Model1.msl" }; return new MyPassEntities(EFconnection.ConnectionString); }
این متد را در جایی شبیه به کد زیر استفاده نمایید:
using (DbModel.MyPassEntities myContext = DbModel.MyPassEntities.Create()) { _Result = myContext.Data.FirstOrDefault(x => x.ID == id); }