【问题标题】:System.InvalidCastExceptionSystem.InvalidCastException
【发布时间】:2011-05-25 18:12:44
【问题描述】:

在一些朋友的帮助下使用 MVC 2 广告我认为所有错误都已修复,直到我遇到了这个庞然大物的错误(个人认为是我曾经造成的最大的异常解释。

错误信息

[A]GodsCreationTaxidermy.Data.EFUnitOfWork 不能转换为 [B]GodsCreationTaxidermy.Data.EFUnitOfWork。 A型起源于 'GodsCreationTaxidermy.Core, 版本=1.0.0.0,文化=中性, PublicKeyToken=null' 在上下文中 位置的“默认” 'C:\Users\Richard L. McCutchen\AppData\Local\Temp\Temporary ASP.NET 文件\root\3d450750\bcfb1c91\assembly\dl3\200754f0\6a7f303e_1418cc01\GodsCreationTaxidermy.Core.DLL'。 B型起源于 'GodsCreationTaxidermy.Data, 版本=1.0.0.0,文化=中性, PublicKeyToken=null' 在上下文中 位置的“默认” 'C:\Users\Richard L. McCutchen\AppData\Local\Temp\Temporary ASP.NET Files\root\3d450750\bcfb1c91\assembly\dl3\5d86cf1a\5d1f256f_0118cc01\GodsCreationTaxidermy.Data.DLL'。

它出现在这一行(在 GenericRepository 中):

public UoW GetCurrentUnitOfWork<UoW>() where UoW : IUnitOfWork
{
    return (UoW)UnitOfWork.Current; //<< error happens here
}

正如建议的那样,我从临时目录中删除了所有 ASP.NET 文件,并更改了注释。

我很确定这个方法是唯一调用 that 的方法,这反过来又会触发错误

private ObjectContext Context
{
    get
    {
        if (_context == null)
        {
            return _context = GetCurrentUnitOfWork<GodsCreationTaxidermy.Data.EFUnitOfWork>().Context;
        }
        return _context;
    }
}

那么,有没有人遇到过类似的事情可以提供帮助?

【问题讨论】:

  • 检查引用是项目而不是 dll?另外,不要在 Context 属性的 if 内返回。
  • 很抱歉,我不理解您回复的第一部分,我确实删除了 if 中的返回,当然没有任何改变
  • 有人知道如何解决这个错误吗?它开始让我发疯了;)
  • 你最近重命名了一个类库吗?看起来您在两个不同的类中有两个版本的 EFUnitOfWork; GodsCreationTaxidermy.Core 和 GodsCreationTaxidermy.Data,这可能是问题所在。
  • 这就是我让我的 Unif 工作的方式,我在 GodsCreationTadisermy.Data 和 ..Repository 中获得了 EFUnitOfWork、EFUnitOfWorkFactory 我有一直有效的 UnitOfWork、IUnitOfWork 和 IUnitOfWorkFactory 广告(在我最后一次使用它MVC 2 程序(在此项目中从未出错)。

标签: asp.net-mvc-2


【解决方案1】:

您最近是否重命名了类库?看起来您在两个不同的类中有两个版本的 EFUnitOfWork; GodsCreationTaxidermy.Core 和 GodsCreationTaxidermy.Data,这可能是问题所在。

【讨论】:

    【解决方案2】:

    不知何故,我有一份我的工作单元和存储库的副本,所以这是其中的 2 个,而 MVC 不知道该怎么做。

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2022-07-18
      • 2018-10-30
      相关资源
      最近更新 更多