NHibernate SqlExeption未处理

时间:2013-07-24 08:07:10

标签: nhibernate nhibernate-mapping

我研究NHibernate并尝试重复从视频课程创建应用程序,
我创建了数据库,模型,XML文件,然后我编写了这段代码

using System;
using System.Reflection;
using NHibernate.Cfg;
using NHibernate.Dialect;
using NHibernate.Driver;

namespace NHibernateDemo
{
internal class Program
{
    static void Main(string[] args)
    {
        var cfg = new Configuration();
        cfg.DataBaseIntegration(x =>
            {
                x.ConnectionString = "Server=localhost; Database=NHibernateDemo; Integrated Security = SSPI";
                x.Driver<SqlClientDriver>();
                x.Dialect<MsSql2008Dialect>();
            });
        cfg.AddAssembly(Assembly.GetExecutingAssembly());
        var sessionFactory = cfg.BuildSessionFactory();
        using (var session = sessionFactory.OpenSession())
        using (var tx = session.BeginTransaction())
        {
            var customers = session.CreateCriteria<Customer>()
                                   .List<Customer>();
            foreach (var customer in customers)
            {
                Console.WriteLine("{0} {1}", customer.FirstName, customer.LastName);
            }
            tx.Commit();
            Console.WriteLine("Enter any key to exit...");
            Console.ReadKey();
        }
    }
}
}

但是当我尝试调试它时, SqlExeption未处理

enter image description here

我想我需要在我的代码中添加登录名和密码,但有人可以解释一下如何操作吗?

1 个答案:

答案 0 :(得分:2)

您正在使用集成安全性,运行代码的用户必须具有访问权限:

Server=localhost; Database=NHibernateDemo; Integrated Security = SSPI

您可以更改连接字符串以使用sql帐户或授予用户访问数据库的权限。

配置连接字符串:connectionstrings