在使用CodeGen.exe与TemplateBuilder.exe时都提示以下错误,问题大概在哪

Dec 7, 2009 at 7:57 AM

System.IO.FileLoadException: 未能加载文件或程序集“Lephone.Linq, Version=3.6.3620.26887, Culture=neutral, PublicKeyToken=bd3c4fc2b6b55f02”或它的某一个依赖项。找到的程序集清单定义与程序集引用不匹配。 (异常来自 HRESULT:0x80131040)
文件名:“Lephone.Linq, Version=3.6.3620.26887, Culture=neutral, PublicKeyToken=bd3c4fc2b6b55f02”
   在 System.Reflection.Assembly._GetExportedTypes()
   在 System.Reflection.Assembly.GetExportedTypes()
   在 Lephone.CodeGen.Helper.EnumTypes(String fileName, CallbackHandler`2 callback)
   在 Lephone.CodeGen.Program.GenerateAspNetTemplate(String fileName, String className)
   在 Lephone.CodeGen.Program.Process(String[] args)
   在 Lephone.CodeGen.Program.Main(String[] args)

警告: 程序集绑定日志记录被关闭。
要启用程序集绑定失败日志记录,请将注册表值 [HKLM\Software\Microsoft\Fusion!EnableLog] (DWORD)设置为 1。
注意: 会有一些与程序集绑定失败日志记录关联的性能损失。
要关闭此功能,请移除注册表值 [HKLM\Software\Microsoft\Fusion!EnableLog]。

 

Coordinator
Dec 7, 2009 at 10:30 AM

应该是CodeGen.exe的版本和Lephone.Linq的版本不匹配。

如果你使用v3.6发布的tools,使用从源代码下载的最新源代码编译的Lephone.CodeGend.exe等文件的话,将源代码按Release编译后,bin目录会生成4个文件,把这4个文件复制到tools\Bin目录下并覆盖原文件,就可以了,不要替换tools目录中的文件。