[英]c# assembly not referenced for identical code in visual studios?
由於“ Xero.Api.Infrastructure.Interface.IAuthenticator在未引用的程序集中定義”,我在構建“ SharePoint項目”時遇到問題。 問題是,當我在“控制台應用程序項目”中使用相同的代碼和引用時,它能夠正確構建。
因此,這是可構建代碼的圖像: Buildable Code
這是不可構建代碼的圖像: 不可構建代碼
這是嘗試構建SharePoint項目時遇到的錯誤: 引用錯誤
代碼是:
X509Certificate2 cert = new X509Certificate2(@"C:\OpenSSL-Win64\bin\public_privatekey.pfx", "lanteria");
var private_app_api = new XeroCoreApi("https://api.xero.com", new PrivateAuthenticator(cert),
new Consumer("GPR4Vxxxxxxxxxxxxxxx6TRVCI", "0VMT6xxxxxxxxxxxxxxRD26S"), null,
new DefaultMapper(), new DefaultMapper());
當嘗試使用PrivateAuthenticator對象作為IAuthenticator對象的輸入時,會發生錯誤。 PrivateAuthenticator對象是IAuthenticator的子類,因此這不應該成為問題。
我確保在兩個項目中都以相同的方式引用了程序集。 我什至第三次確保這一點。 唯一的區別是,一個項目是控制台應用程序項目,另一個項目是SharePoint項目。 任何幫助將不勝感激。
謝謝
您需要下載nuget
PM> Install-Package Xero.API.SDK.Minimal or Install-Package Xero.API.SDK
我能夠找到問題的根源,但仍然無法解決。 我目前正在使用一種解決方法。 問題是我的一個程序集引用了另一個程序集,並且由於某些原因在SharePoint項目中無法引用。 即
問題是由於某種原因B無法引用A。我的臨時解決方法是,因為我能夠在ConsoleApplication上運行,所以我讓SharePoint項目運行了控制台應用程序。 這使我能夠在SharePoint上創建觸發器,該觸發器將運行控制台應用程序,該控制台應用程序會將更改推送到Xero。
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.