我在过去几天弹出此错误。我一直在关注Asp.Net Mvc 4 and the Web Api: Building a REST Service from Start to Finish关于如何构建 Rest Service API 的过程,结果如下:
无法打开登录请求的数据库“ServicesDb”。登录失败。
用户“my-PC\my”登录失败。
所以我停下来看了一会儿书,什么也没有。所以我下载了本书的配套项目,当我运行它时,我遇到了与我自己的服务相同的错误。
这让我很震惊,因为我一直使用Windows Authentication
本地数据库引擎。我在使用Entity Framework时没有遇到任何问题,所以我开始认为这与我第一次使用的NHibernate和Fluent Nhibernate有关。
连接字符串:
<connectionStrings>
<add name="ServicesDb"
providerName="System.Data.SqlClient"
connectionString="Data Source=(LocalDb)\v11.0;
<!-- connectionString="Server=(LocalDb)\v11.0; <----- Tried this too -->
initial catalog=ServicesDb;
Integrated Security=True;
Application Name=Services API Website" />
</connectionStrings>
有没有其他人在读这本书的时候遇到过这个问题?有谁知道这可能是什么原因,以及我如何才能通过它?
更新:这是无法执行的代码,这本书使用了 Ninject,我也是。
private void ConfigureNHibernate(IKernel container)
{
// Build the NHibernate ISessionFactory object
var sessionFactory = FluentNHibernate //Fails here, sessionFactory variable not instantiated.
.Cfg.Fluently.Configure()
.Database(
MsSqlConfiguration.MsSql2008.ConnectionString(
c => c.FromConnectionStringWithKey("ServicesDb")))
.CurrentSessionContext("web")
.Mappings(m => m.FluentMappings.AddFromAssemblyOf<SqlCommandFactory>())
.BuildSessionFactory();
// Add the ISessionFactory instance to the container
container.Bind<ISessionFactory>().ToConstant(sessionFactory); //sessionFactory needed here
// Configure a resolver method to be used for creating ISession objects
container.Bind<ISession>().ToMethod(CreateSession);
container.Bind<ICurrentSessionContextAdapter>().To<CurrentSessionContextAdapter>();
}