【问题标题】:ExecuteSprocAccessor throws an "Cannot create a mapping for type T" errorExecuteSprocAccessor 引发“无法为类型 T 创建映射”错误
【发布时间】:2012-09-04 06:58:04
【问题描述】:

我编写了一个程序来获取一个字符串作为输入并返回参数列表。我已使用 ExecuteSprocAccessor 将结果映射到具有 ExecuteSprocAccessor 返回的属性的模式。

详细异常:

System.InvalidOperationException 未处理 Message=Cannot create CampaignModel 类型的映射。 来源=Microsoft.Practices.EnterpriseLibrary.Data StackTrace:
在 Microsoft.Practices.EnterpriseLibrary.Data.ReflectionRowMapper1..ctor(IDictionary2 属性映射)在 Microsoft.Practices.EnterpriseLibrary.Data.MapBuilder1.MapBuilderContext.Build() at Microsoft.Practices.EnterpriseLibrary.Data.MapBuilder1.BuildAllProperties() 在 Microsoft.Practices.EnterpriseLibrary.Data.DatabaseExtensions.CreateSprocAccessor[TResult](数据库 数据库,字符串 procedureName,IParameterMapper parameterMapper)
在 Microsoft.Practices.EnterpriseLibrary.Data.DatabaseExtensions.ExecuteSprocAccessor[TResult](数据库 数据库,字符串procedureName,IParameterMapper parameterMapper, 对象 [] 参数值)在 SolarWinds.Services.BusinessLayer.Repositories.DataWarehouseCampaignRepository.GetCampignData(字符串 活动 ID)在 C:\P4\Lokesh.Ravichandru\depot\EnterpriseServices\Main\Services\Src\Lib\SolarWinds.Services.BusinessLayer\Repositories\DataWarehouseCampaignRepository.cs:line 28 在 Registration.Campaign.Test.Program.Main(String[] args) 中 C:\P4\Lokesh.Ravichandru\depot\EnterpriseServices\Main\Services\Registration.Campaign.Test\Program.cs:line 16 在 System.AppDomain._nExecuteAssembly(RuntimeAssembly 程序集,字符串 [] 参数)在 System.AppDomain.ExecuteAssembly(字符串程序集文件,证据 装配安全,字符串 [] 参数)在 Microsoft.VisualStudio.HostingProcess.HostProc.RunUsersAssembly()
在 System.Threading.ThreadHelper.ThreadStart_Context(对象状态)
在 System.Threading.ExecutionContext.Run(ExecutionContext executionContext、ContextCallback 回调、对象状态、布尔值 ignoreSyncCtx) 在 System.Threading.ExecutionContext.Run(ExecutionContext executionContext、ContextCallback 回调、对象状态)在 System.Threading.ThreadHelper.ThreadStart() 内部异常: System.TypeInitializationException Message=类型初始化器 对于'Microsoft.Practices.EnterpriseLibrary.Data.ReflectionRowMapper1' threw an exception.
Source=Microsoft.Practices.EnterpriseLibrary.Data
TypeName=Microsoft.Practices.EnterpriseLibrary.Data.ReflectionRowMapper
1 堆栈跟踪:在 Microsoft.Practices.EnterpriseLibrary.Data.ReflectionRowMapper1..ctor(IDictionary2 propertyMappings) 内部异常: System.IO.FileNotFoundException Message=无法加载文件 或程序集 'Microsoft.Practices.Unity, Version=2.1.505.0, Culture=neutral, PublicKeyToken=31bf3856ad364e35' 或其之一 依赖关系。系统找不到指定的文件。
来源=Microsoft.Practices.EnterpriseLibrary.Data
文件名=Microsoft.Practices.Unity,版本=2.1.505.0, 文化=中立,PublicKeyToken=31bf3856ad364e35
FusionLog==== 预绑定状态信息===LOG:用户= SWDEV\Lokesh.RavichandruLOG:DisplayName = Microsoft.Practices.Unity, 版本=2.1.505.0,文化=中性,PublicKeyToken=31bf3856ad364e35 (完全指定)LOG:Appbase = file:///C:/P4/Lokesh.Ravichandru/depot/EnterpriseServices/Main/Services/Registration.Campaign.Test/bin/Debug/LOG: 初始 PrivatePath = NULLCalling 程序集: Microsoft.Practices.EnterpriseLibrary.Data,版本=5.0.505.0, Culture=neutral, PublicKeyToken=31bf3856ad364e35.===LOG: 这个绑定 在默认加载上下文中启动。LOG:使用应用程序配置 文件: C:\P4\Lokesh.Ravichandru\depot\EnterpriseServices\Main\Services\Registration.Campaign.Test\bin\Debug\Registration.Campaign.Test.vshost.exe.ConfigLOG: 使用主机配置文件:LOG:使用机器配置文件 从 C:\Windows\Microsoft.NET\Framework\v4.0.30319\config\machine.config.LOG: 后策略参考:Microsoft.Practices.Unity,Version=2.1.505.0, 文化=中性,PublicKeyToken=31bf3856ad364e35LOG:正在尝试 下载新网址 file:///C:/P4/Lokesh.Ravichandru/depot/EnterpriseServices/Main/Services/Registration.Campaign.Test/bin/Debug/Microsoft.Practices.Unity.DLL.LOG: 正在尝试下载新 URL file:///C:/P4/Lokesh.Ravichandru/depot/EnterpriseServices/Main/Services/Registration.Campaign.Test/bin/Debug/Microsoft.Practices.Unity/Microsoft.Practices.Unity.DLL.LOG: 正在尝试下载新 URL file:///C:/P4/Lokesh.Ravichandru/depot/EnterpriseServices/Main/Services/Registration.Campaign.Test/bin/Debug/Microsoft.Practices.Unity.EXE.LOG: 正在尝试下载新 URL file:///C:/P4/Lokesh.Ravichandru/depot/EnterpriseServices/Main/Services/Registration.Campaign.Test/bin/Debug/Microsoft.Practices.Unity/Microsoft.Practices.Unity.EXE。 StackTrace:在 Microsoft.Practices.EnterpriseLibrary.Data.ReflectionRowMapper`1..cctor() 内部异常:

添加更多细节。

我尝试设置var resultMapper = MapBuilder<CampaignModel>.MapAllProperties().Build();

我在上面一行中遇到了异常。

请谁能说出这背后的错误是什么。

【问题讨论】:

    标签: wcf


    【解决方案1】:

    问题是由于没有添加以下 dll 的引用

    Microsoft.Practices.Unity.dll、Microsoft.Practices.Unity.Configuration.dll、Microsoft.Practices.Unity.Interception.dll、Microsoft.Practices.Unity.Interception.Configuration.dll。

    在一直使用该库的应用程序中。

    -洛克希

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 2021-04-21
      • 1970-01-01
      • 1970-01-01
      • 2018-11-08
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      相关资源
      最近更新 更多