0

尝试从 IIS 运行 DotNetNuke 7.1 时出现以下错误。

你调用的对象是空的。

说明:执行当前 Web 请求期间发生未处理的异常。请查看堆栈跟踪以获取有关错误及其源自代码的位置的更多信息。

异常详细信息:System.NullReferenceException:对象引用未设置为对象的实例。

源错误:第 572 行://首先调用 GetProviderPath - 这确保数据库已正确初始化
第 573 行://如果无法正确初始化,还会生成相应的错误消息
第 574 行:字符串 strMessage = DataProvider.Instance()。 GetProviderPath();
第 575 行://从 DB 获取当前数据库版本
第 576 行:if (!strMessage.StartsWith("ERROR:"))

在下载源代码并将其解压缩到文件夹然后运行后,我尝试从 Visual Studio 2012 运行它,但我得到了同样的错误(另外,VS 加载了大约 13 个内置于网络服务器的实例,这是不正确的) .

显然,数据库有问题。从我过去读到的内容来看,应该有一个启动配置页面(用于在您第一次运行项目时配置设置)。

我确实查看了 IIS 的本地版本(在 Windows 8 上运行),它在那里创建了很好的站点,但是,由于某种原因,内部网络服务器尝试运行(并且在外部 IIS 上运行的选项是灰色的)。

有人在使用 DNN 社区版时遇到过这个问题吗?我试过以管理员身份运行并设置权限,但一点运气都没有。

有任何解决这个问题的方法吗?

屏幕截图

4

1 回答 1

1

好的,关键是彻底删除Database.mdf文件。然后在 SQL Server(2008 或更高版本)中创建您选择的新空数据库。创建一个具有 db_owner 访问权限的新用户帐户(因为它必须能够创建表等)。更改 release.config 和 development.config 中的连接字符串以连接到数据库。删除 web.config 文件。将任一配置文件重命名为“web.config” 将默认项目设置为 VS 中的 Web 项目 将默认页面设置为 default.aspx 运行

我错误地假设运行应用程序会为我重命名配置文件(不知道我为什么这么认为)。解决了!

于 2013-07-11T20:04:24.547 回答