1

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

详细例外:

System.InvalidOperationException 未处理 消息=无法为 CampaignModel 类型创建映射。Source=Microsoft.Practices.EnterpriseLibrary.Data StackTrace:
在 Microsoft.Practices.EnterpriseLibrary.Data.ReflectionRowMapper 1..ctor(IDictionary2 propertyMappings) 在 Microsoft.Practices.EnterpriseLibrary.Data.MapBuilder 1.MapBuilderContext.Build() at Microsoft.Practices.EnterpriseLibrary.Data.MapBuilder1.BuildAllProperties() 在 Microsoft.Practices.EnterpriseLibrary.Data.DatabaseExtensions。 CreateSprocAccessor[TResult](Database database, String procedureName, IParameterMapper parameterMapper)
在 Microsoft.Practices.EnterpriseLibrary.Data.DatabaseExtensions.ExecuteSprocAccessor[TResult](Database database, String procedureName, IParameterMapper parameterMapper, Object[] parameterValues) 在 SolarWinds.Services.BusinessLayer.Repositories.DataWarehouseCampaignRepository.GetCampignData(String campaignId) 在 C:\ P4\Lokesh.Ravichandru\depot\EnterpriseServices\Main\Services\Src\Lib\SolarWinds.Services.BusinessLayer\Repositories\DataWarehouseCampaignRepository.cs:C 中 Registration.Campaign.Test.Program.Main(String[] args) 的第 28 行:\P4\Lokesh.Ravichandru\depot\EnterpriseServices\Main\Services\Registration.Campaign.Test\Program.cs:System.AppDomain._nExecuteAssembly 的第 16 行(RuntimeAssembly 程序集,String[] args)在 System.AppDomain.ExecuteAssembly(字符串汇编文件,Microsoft.VisualStudio.HostingProcess.HostProc.RunUsersAssembly() 的证据 assemblySecurity, String[] args)
在 System.Threading.ThreadHelper.ThreadStart_Context(Object state)
在 System.Threading.ExecutionContext.Run(ExecutionContext executionContext, ContextCallback callback, Object state, Boolean ignoreSyncCtx) 在 System.Threading.ExecutionContext.Run(ExecutionContext executionContext, ContextCallback callback, Object state ) 在 System.Threading.ThreadHelper.ThreadStart() InnerException: System.TypeInitializationException Message='Microsoft.Practices.EnterpriseLibrary.Data.ReflectionRowMapper 1 StackTrace 的类型初始化器:在 Microsoft.Practices.EnterpriseLibrary.Data.ReflectionRowMapper1' threw an exception.
Source=Microsoft.Practices.EnterpriseLibrary.Data
TypeName=Microsoft.Practices.EnterpriseLibrary.Data.ReflectionRowMapper
1..ctor(IDictionary2 propertyMappings) InnerException: System.IO.FileNotFoundException Message=Could not load file or assembly 'Microsoft.Practices.Unity, Version=2.1.505.0, Culture=neutral, PublicKeyToken=31bf3856ad364e35' 或其依赖项之一。该系统找不到指定的文件。
Source=Microsoft.Practices.EnterpriseLibrary.Data
FileName=Microsoft.Practices.Unity,版本=2.1.505.0,文化=中性,PublicKeyToken=31bf3856ad364e35
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() InnerException:

添加更多细节。

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

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

请任何人都可以说出这背后的错误是什么。

4

1 回答 1

1

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

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

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

-洛克什

于 2012-09-05T06:33:52.593 回答