2009-07-16 64 views
0

我正在做实体框架的非标准构建。我已经使用EdmGen2生成一个数据库的edmx,并将组件csdl,msdl和ssdl文件分割成它们自己的文件。连接字符串中的元数据如下所示:实体框架:模式中的每个类型名称必须是唯一的

C:\ Downloads \ EDM | filename.csdl | filename.msdl | filename.ssdl

我有一个单元测试,什么也不做,但尝试打开的连接,我得到这个错误(与其他很多糠一起):

“模式中的每种类型的名称必须是独特“

如果我手动进入csdl并为名称添加”1“,它最终会移至msdl文件并开始抱怨。很显然,架构在开放操作中得到了双重定义......

  1. 在测试或从属项目中没有对edmx的引用。事实上,没有任何引用,因为这是一个在运行时动态生成所有这些东西的项目。
  2. 我见过Julie Lehrman /不要成为Iffy的职位,而且看起来并不是那个问题。

TIA ...

+0

EdmGen2在这里找到: http://code.msdn.microsoft.com/EdmGen2 如果我把所产生的同一个项目,并作出独立的类项目中的标准参考吧,输出的作品就好了。 – 2009-07-16 14:18:37

回答

0

想通了......元数据的工作空间显然是硬编码为寻找三个文件(这是有道理的),当我删除元数据标签目录规范,这一切都开始工作。我的元数据属性现在看起来像这样:

C:\ Downloads \ filename.csdl | C:\ Downloads \ filename.msdl | C:\ Downloads \ filename.ssdl

所以我认为这是一个或者一个命题:要么指定文件所在的目录,要么指定单个文件位置。

相关问题