使用默认连接字符串进行身份验证的Web API和使用外部数据库获取数据的Web API

时间:2015-04-20 11:36:56

标签: .net asp.net-mvc asp.net-web-api

我有一个具有MVC架构结构和WEB Api的解决方案。网页连接到WEB Api以首次登录并获取令牌(使用本地数据库)。一旦有了令牌,网站就会再次连接到它以获得产品。 Web API上的方法显示如下:

public IEnumerable<string> Get(int id)
{
    try
    {
        Commonlayer.Views.ProductView pv = new ProductRepository().GetProductV(id);
        return new string[] { pv.Description, pv.Email, pv.ImageLink, pv.Name, pv.Price.ToString() };
    }
    catch(Exception ex)
    {
        return new string[] { "1", "2", "3"};
    }
}

这样做是因为它连接到我的数据访问层,负责从SQL数据库获取产品。然而,这仍然失败,可能是因为我无法正确连接到数据库。我试图在WEB API配置中添加除当前本地数据库字符串以外的连接字符串,但是当它尝试登录时会导致错误(可能是因为它混淆了要使用哪个连接字符串?)。

这是默认的连接字符串:

    <connectionStrings>
<add name="DefaultConnection" connectionString="Data Source=(LocalDb)\v11.0;AttachDbFilename=|DataDirectory|\aspnet-WebAPI.mdf;Initial Catalog=aspnet-WebAPI;Integrated Security=True" providerName="System.Data.SqlClient" />
      </connectionStrings>

此时我不知道该怎么做,任何指针都会很棒。

1 个答案:

答案 0 :(得分:0)

我找到了答案。我的WEB API需要两个连接字符串,一个用于本地数据库,一个用于外部。但是我正在以不同的方式编写连接字符串,现在已经解决了。