2010-09-02 269 views
0

嗨,我有一个问题与C#使用ASP MVC。当我使用强类型继承创建aspx页面时,我收到以下错误:异常详细信息:System.ArgumentException:路径中的非法字符。 ASP.NET MVC

'/'应用程序中的服务器错误。

路径中存在非法字符。 描述:执行当前Web请求期间发生未处理的异常。请查看堆栈跟踪以获取有关该错误的更多信息以及源代码的位置。

异常详细信息:System.ArgumentException:路径中的非法字符。

源错误:

线60:///

线61:///连接字符串

线62:公共的ObjectContext(串的connectionString)

63行:: base(connectionString,“Entity”)

Line 64:{

我无法解决这个问题,在我创建的任何网页中我收到了同样的问题。我在互联网上检查了我的web.config信息,但是它确定,我创建了ado实体连接,但是也发生了同样的情况。

这是我的web.config中的连接字符串:

添加名称= “实体” 的connectionString =“元数据= RES:// /Models.model.csdl|res:///Models.model.ssdl | res://*/Models.Model.msl; provider = System.Data.SqlClient; provider connection string = " Data Source = SOURCE \ SQL; Initial Catalog = db; Persist Security Info = True; User ID = user; Password = password; MultipleActiveResultSets = True "“providerName =”System.Data.EntityClient“/>

非常感谢你!

回答

1

我可以看到你的连接字符串看起来不对。应该....metadata=res://*/Models.model.csdl|res://*/Models.model.ssdl....

只要你知道,元数据表示这样的:

metadata=res://{assembly}/{namespace}.{filename}.csdl|res://{assembly}/{namespace}.{filename}.ssdl|res://{assembly}/{namespace}.{filename}.msl; 

你可以把组件名称或通配符*,它看起来像你缺少你CSDL和SSDL

+0

谢谢您的回答。我尝试缩短信息,真正的路径是元数据= res://*/Models.DataLogic.Data.nameModel.csdl 我很困惑的事实,我不能声明控制器或类的实体访问使用该路线。一些简单的像私人entitymodel db = new entitymodel();是不可能的,如果我不把模型放在EDMX文件。直接代替Models.Datalogic.Data.edmx 我真的很困惑,我会检查。非常感谢您的参与。 – 2010-09-03 00:06:28