我正在研究.NETCore 2 Web API。我开始使用连接字符串处理本地数据库,如以下代码片段所示:
public void ConfigureServices(IServiceCollection services)
{
services.AddCors(options => options.AddPolicy("Cors", builder =>
{
builder
.AllowAnyOrigin()
.AllowAnyMethod()
.AllowAnyHeader();
}));
services.AddMvc();
var connection = @"Server=.;Database=ESociety;Trusted_Connection=True;";
services.AddDbContext<ESocietyContext>(options => options.UseSqlServer(connection));
services.AddScoped<IArtistRepository, ArtistRepository>();
}
工作正常。
然后我更改为数据库连接字符串以指向smarterasp服务器。 我可以通过SSMS连接到smarterasp服务器上的数据库。
但我无法通过Web API进行连接。
public void ConfigureServices(IServiceCollection services)
{
services.AddCors(options => options.AddPolicy("Cors", builder =>
{
builder
.AllowAnyOrigin()
.AllowAnyMethod()
.AllowAnyHeader();
}));
services.AddMvc();
var connection = @"Server=sql6***.site4now.net;Database=[dbname];Trusted_Connection=True;User Id=[username];password=[password]";
services.AddDbContext<ESocietyContext>(options => options.UseSqlServer(connection));
services.AddScoped<IArtistRepository, ArtistRepository>();
}
我错过了什么或者我创建的连接字符串不正确吗?
提前致谢。
答案 0 :(得分:0)
您应该从连接字符串中删除此部分
Trusted_Connection=True
或者它将尝试使用您的Windows凭据连接到数据库。
所以工作字符串应该是
@"Server=sql6***.site4now.net;Database=[dbname];User Id=[username];password=[password]"
你可以在这里阅读有关的差异: