Trying to use DSS SDK Seach and I am getting a System.TypeLoadException Exception

Trying to use DSS SDK Seach in project targeting .Net Standard 2.1 and I am getting a System.TypeLoadException Exception

Tried changing the target to .Net Framework 4.5.1 and I am getting the same exception

I copied and referenced all the DLLs as directed in the Getting Started docs.

System.TypeLoadException: Could not load type 'Microsoft.OData.Edm.Library.EdmElement' from assembly 'Microsoft.OData.Edm, Version=7.5.0.20627, Culture=neutral, PublicKeyToken=31bf3856ad364e35'.\r\n at Microsoft.OData.Client.DataServiceContext..ctor(Uri serviceRoot, ODataProtocolVersion maxProtocolVersion)\r\n at ThomsonReuters.Dss.Api.DssDataServiceContext.Initialize(Boolean sampleMode, String clientSessionId) in d:\\BuildAgent\\work\\5085137dd0574126\\src\\ServiceLayer\\ServiceLayer.Client\\Core\\DssDataServiceContext.cs:line 100\r\n at ThomsonReuters.Dss.Api.DssDataServiceContext..ctor(Uri serviceRoot, String userName, String passWord, Boolean sampleMode, String clientSessionId) in d:\\BuildAgent\\work\\5085137dd0574126\\src\\ServiceLayer\\ServiceLayer.Client\\Core\\DssDataServiceContext.cs:line 70\r\n at ThomsonReuters.Dss.Api.Search.SearchContext..ctor(Uri serviceRoot, String userName, String password, Boolean sampleMode, String clientSessionId)

Best Answer

  • Jirapongse
    Jirapongse ✭✭✭✭✭
    Answer ✓

    @Clarity Andrew

    DSS SDK doesn't support .NET standard. It supports .NET Framework 4.5+, mentioned here.

    The version of Microsoft.OData.Edm.dll in the DSS SDK is 6.15.

    image

    From the error message, the version of Microsoft.OData.Edm is 7.5.0.20627. I get the same error if I use the same version (7.5.0.20627).

    Unhandled Exception: System.TypeLoadException: Could not load type 'Microsoft.OData.Edm.Library.EdmElement' from assembly 'Microsoft.OData.Edm, Version=7.5.0.20627, Culture=neutral, PublicKeyToken=31bf3856ad364e35'.
       at Microsoft.OData.Client.DataServiceContext..ctor(Uri serviceRoot, ODataProtocolVersion maxProtocolVersion)
       at ThomsonReuters.Dss.Api.DssDataServiceContext.Initialize(Boolean sampleMode, String clientSessionId) in d:\BuildAgent\work\5085137dd0574126\src\ServiceLayer\ServiceLayer.Client\Core\DssDataServiceContext.cs:line 100
       at ThomsonReuters.Dss.Api.DssDataServiceContext..ctor(Uri serviceRoot, String userName, String passWord, Boolean sampleMode, String clientSessionId) in d:\BuildAgent\work\5085137dd0574126\src\ServiceLayer\ServiceLayer.Client\Core\DssDataServiceContext.cs:line 69
       at ThomsonReuters.Dss.Api.Extractions.ExtractionsContext..ctor(Uri serviceRoot, String userName, String password, Boolean sampleMode, String clientSessionId) in d:\BuildAgent\work\5085137dd0574126\src\Api\RestApi.Client\ExtractionsClientApi.generated.cs:line 3851
       at DSSTest451.DssClient.ConnectToServer(String dssUserName, String dssUserPassword) in C:\Users\U8009686\source\repos\DSSTest451\DSSTest451\DssClient.cs:line 76
       at DSSTest451.Program.Main() in C:\Users\U8009686\source\repos\DSSTest451\DSSTest451\Program.cs:line 30

    The problem can be solved if I used the Microsoft.OData.Edm.dll version 6.15 in the DSS SDK package.

Answers