我正在尝试构建一个复杂的Web项目,该项目涉及4个共享相同模型,数据库并且还使用基于内置表单的身份验证的网站。
有人建议我创建一个包含共享元素的类库,然后在每个项目中引用该库。这对我来说很有意义,但即使在获得所有参考资料之后我似乎也遇到了很多错误。所以我基本上从头开始,现在我在一个解决方案下有两个常规的MVC 4.0项目。第一个项目工作正常。它包含基于表单的authenticxation成员控制器和模型,以及我的所有数据模型和带有db里面的App_Data文件夹。 web.config文件指向数据库,我没有使用默认视图和控制器测试成员资格特征的问题。
我在第一个app上设置了一个depndency并且引用了第一个项目。该项目仅包含默认的HomeController和Views。我的构建没有错误。当我去运行webite然后尝试访问/ Account / LogOff时,我收到以下错误:
无法将文件'〜\ App_Data \ Pp.mdf'附加为数据库'Pp。
描述:执行当前Web请求期间发生了未处理的异常。请查看堆栈跟踪以获取有关错误及其源自代码的位置的更多信息。
异常详细信息:System.Data.SqlClient.SqlException:无法将文件'〜\ App_Data \ Pp.mdf'附加为数据库'Pp。
来源错误:
第39行:} 第40行: 第41行:WebSecurity.InitializeDatabaseConnection(“PpDB”,“UserProfile”,“UserId”,“UserName”,autoCreateTables:true);第42行:} 第43行:catch(Exception ex)
源文件:c:\ Users \ Administrator \ Documents \ Prp \ PpModels \ Filters \ InitializeSimpleMembershipAttribute.cs Line:41
我尝试使用第二个项目的连接字符串,但我真的不确定如何使用MVC解析路径。
任何帮助和建议将不胜感激。我把头发拉出来!如果你知道任何教程,告诉你如何使用多个项目共享模型和数据库,将非常感激。谢谢!
答案 0 :(得分:0)
答案是硬编码第二个项目中连接字符串中的完整路径,以便它指向第一个项目中的app_data文件夹。