以下是在嘗試排除自我託管設計器中相同問題時發現的情況。創建一個類型在其中的庫項目。我的是這個。這是一個錯誤還是我錯過了WF設計器的一些東西
namespace RaceEventLibrary
{
public class Registration
{
public string Name { get; set; }
public int Age { get; set; }
public string EventName { get; set; }
}
}
現在創建一個Workflow 4.5控制檯應用程序(或服務,它似乎並不重要)。參考圖書館項目。在設計器上添加一個序列,然後創建這個庫類型的InArgument,在我的情況下注冊。一切都很好,設計師很高興。
接下來創建另一個相同的項目,引用同一個庫。現在只需從第一個項目中打開xaml文件即可。繁榮,它找不到類型。
System.Xaml.XamlException:'屬性'registration'的類型'InArgument(r:Registration)'無法解析。'
這在XAML是:
<x:Members>
<x:Property Name="registration" Type="InArgument(r:Registration)" />
</x:Members>
preceded by
xmlns:r="clr-namespace:RaceEventLibrary;assembly=RaceEventLibrary"
隨着自託管設計師,我一直在尋找這個問題的許多變化和嘗試了各種方法來獲得加載到設計庫組件,但沒有喜悅。
有關如何解決此問題的任何建議?
您需要使用[Fusion log viewer。](http://msdn.microsoft.com/en-us/library/e74a18c4.aspx)進行調試。只要確保以管理員身份運行它,打開日誌,並在嘗試調試之前重新啓動。您將看到CLR正在查找程序集的位置以及哪個版本,並從那裏確定它未找到的原因(如果您已安裝它)。 – Will
很奇怪。做了你的建議並看到很多日誌。但沒有這個問題。自寫之後,我把這個違規的工作流帶入瞭解決方案,並且可以用這種方式在設計器中打開它,因爲obj文件夾下的所有文件都在那裏,所以並不奇怪。繼續,但謝謝你的建議。 –
等一下,你只是打開一個不在解決方案中的文件?這不被支持,AFAIK。 – Will