FineUI 官方论坛

标题: 修正在VS2015中不能运行AppBox问题。 [打印本页]

作者: hexlog    时间: 2015-12-11 11:12
标题: 修正在VS2015中不能运行AppBox问题。
本帖最后由 hexlog 于 2015-12-16 18:07 编辑

从拿到源码包开始折腾,对于新手来说相关资料还是太少,在论坛上看到好几位反映问题的都没有获得解决答案。

起初问题:
System.Data.SqlClient.SqlException”类型的异常在 EntityFramework.dll 中发生,但未在用户代码中进行处理

其他信息: 在与 SQL Server 建立连接时出现与网络相关的或特定于实例的错误。未找到或无法访问服务器。请验证实例名称是否正确并且 SQL Server 已配置为允许远程连接。 (provider: SQL Network Interfaces, error: 50 - 发生了 Local Database Runtime 错误。无法创建自动实例。有关错误详细信息,请参阅 Windows 应用程序事件日志。)
[attach]8338[/attach]

看来是连不上数据库,然后就不停的修改数据库连接,还未能成功:

  1.         <!--<add name="Default" providerName="System.Data.SqlClient"
  2.           connectionString="Server=(localdb)\MSSQLLocalDB;Integrated Security=true" />-->
  3.         <!--<add name="Default" providerName="System.Data.SqlClient"
  4.           connectionString="Data Source=(LocalDB)\MSSQLLocalDB;AttachDbFileName=|DataDirectory|\AppBox.mdf;InitialCatalog=AppBox;Integrated Security=True;MultipleActiveResultSets=True" />-->
  5.         <add name="Default" providerName="System.Data.SqlClient"
  6.           connectionString="Data Source=(localdb)\MSSQLLocalDB;Initial Catalog=AppBox;Integrated Security=SSPI;AttachDBFilename=|DataDirectory|\appbox.mdf" />
  7.         <!--<add name="MySQL" providerName="MySql.Data.MySqlClient"
  8.           connectionString="Server=localhost;Database=appbox;Uid=root;Pwd=root;Charset=utf8" />-->
复制代码


到了凌晨1点还没没有解决问题。

正准备去睡觉时,蹩见如下一行代码,好熟悉的感觉:

  1.     <defaultConnectionFactory type="System.Data.Entity.Infrastructure.LocalDbConnectionFactory, EntityFramework">
  2.       <parameters>
  3.         <parameter value="v11.0" />
  4.       </parameters>
  5.     </defaultConnectionFactory>
复制代码


看见v11.0了么?

记得曾经看到过微软的VS默认的数据库实例不再按版本号命名,统一为“MSSQLLocalDB”

立马修改成:
  1.         <defaultConnectionFactory type="System.Data.Entity.Infrastructure.LocalDbConnectionFactory, EntityFramework">
  2.             <parameters>
  3.                 <parameter value="MSSQLLocalDB" />
  4.             </parameters>
  5.         </defaultConnectionFactory>
复制代码


运行,如然,熟悉的登陆界面出来了。
[attach]8339[/attach]
但是看看数据库名称:
[attach]8340[/attach]

这么长一串,明显不是配置的数据库名称。
看来连接字符串没有起作用,联想到论坛其它帖子修改数据库连接。

找到文件:.\AppBox\Business\Models\AppBoxContext.cs

看到如下代码:

  1.         //public AppBoxContext() : base("MySQL")
  2.         //{
  3.         //}
复制代码
试着增加:

  1.         //public AppBoxContext() : base("MySQL")
  2.         //{
  3.         //}
  4.         public AppBoxContext() : base("Default")
  5.         {
  6.         }
复制代码


保存,运行代码。
[attach]8341[/attach]

终于一切正常了。

file:///D:\Documents\Tencent Files\184140741\Image\JJF6PF138M%A(6J}5@06%0T.jpg


另附“
HTTP Error 500.22 - Internal Server Error检测到在集成的托管管道模式下不适用的 ASP.NET 设置。

错误解决办法:

[attach]8342[/attach]

修改项目托管模式为:经典



作者: wxgwxg    时间: 2015-12-13 15:26
我觉得还是使用sqlexpress更好控制些
作者: 老鱼翁    时间: 2015-12-25 18:07
开发服务器选项在那里啊?
作者: redalert    时间: 2016-1-9 20:41
开发服务器在哪儿?

作者: hexlog    时间: 2016-1-10 21:10
老鱼翁 发表于 2015-12-25 18:07
开发服务器选项在那里啊?

项目属性里啊。注意看屏幕。
作者: hexlog    时间: 2016-1-10 21:10
redalert 发表于 2016-1-9 20:41
开发服务器在哪儿?

项目属性里啊。注意看屏幕。




欢迎光临 FineUI 官方论坛 (https://www.fineui.com/bbs/) Powered by Discuz! X3.4