嘗試編譯在此所說明 http://sparxsystems.com/enterprise_architect_user_guide/13.0/automation/repository3.htmlC#和的Sparx EA互操作LIB - 找不到方法
與方法RepositoryType()
C#代碼,我得到這個錯誤
錯誤CS1061 '倉庫' 呢不包含'RepositoryType'的定義,並且沒有可以找到接受'Repository'類型的第一個參數的擴展方法'RepositoryType'(您是否缺少使用指令或程序集引用?)
我試圖清理/重建所有東西,但它不工作。此外,在運行時調用看起來不錯 - 返回字符串。
有什麼可以幫忙嗎?
UPD:
Usings和分配
using System.Collections.Generic;
using System.IO;
using System.Reflection;
using System.Text.RegularExpressions;
using System.Xml.Linq;
using EA;
using MSScriptControl;
public class SparxEaDocGenScriptRunner
{
private MSScriptControl.ScriptControl _msScriptControl;
private EA.Repository _repository;
private string _language;
private string _databaseType;
private Regex _eaLanguageDeterm;
private Regex _getExtFromName;
private IDictionary<string, string> _languageExts;
/// <summary>
/// Add-in logger accessor.
/// </summary>
private ApplicationLogger _logger;
public SparxEaDocGenScriptRunner(Repository repository, ApplicationLogger logger)
{
_repository = repository;
_logger = logger;
var connectionString = _repository.ConnectionString;
var type = _repository.RepositoryType();
}
//...
}
而且其注入來自於這部分代碼的所有方式,可以說,Main.cs
:
public void EA_MenuClick(EA.Repository Repo, string Location, string MenuName, string ItemName)
{
switch (ItemName)
{
case MENU_DOC_GEN:
#region Logging Statement
Logger.Write(new LogEntry
{
Severity = TraceEventType.Information,
Message = "Loading Document Generator",
Categories = new[] { ApplicationConstants.DocumentGeneratorLogCategory }
});
#endregion
DocumentGenerator docgen = new DocumentGenerator(Repo);
docgen.ShowDialog();
break;
case MENU_ABOUT:
new AboutBox().Show();
break;
}
}
UPD2:
我的EA.Interop.dll
版本:
你的目標是哪個框架? (如果您的目標客戶端配置文件框架,請嘗試定位非客戶端配置文件) – Mart10
@Hue pardon?你是什麼意思?只有一個'EA.Interop.dll'我在那裏用 – DanilGholtsman
右鍵點擊你的項目 - >屬性。目標框架下出現什麼? – Mart10