私のプロジェクトは、.Net 4.5 を使用する VS2012 にあります。
クラスに次のオーバーロードされたメソッドがあります。
public SalesOrder GetSalesOrder(int salesOrderID, bool forceRefresh = false)
{
using (iSeriesUOW uow = new iSeriesUOW())
{
return GetSalesOrder(uow, salesOrderID, forceRefresh);
}
}
public SalesOrder GetSalesOrder(iSeriesUOW uow, int salesOrderID, bool forceRefresh = false)
{
.... do some stuff here
}
次を使用して最初のメソッドを呼び出そうとしています:
public void PopulateModel(string companyCode, int salesOrderID, bool forceRefresh)
{
SalesOrders blSalesOrders = new SalesOrders(companyCode);
SalesOrder salesOrder = blSalesOrders.GetSalesOrder(salesOrderID, forceRefresh);
... Other code here
}
GetSalesOrder の呼び出しでコンパイラからエラーが表示されます。
The type 'DataAccess.iSeriesUOW' is defined in an assembly that is not referenced. You must add a reference to assembly 'Viper.DataAccess, Version=1.0.0.0, Culture=neutral, PublicKeyToken=null'.
GetSalesOrder で forceRefresh を削除すると、正常にコンパイルされます。
2 番目の GetSalesOrder オーバーロードを呼び出そうとしていると思いますが、(int, bool) の署名が明確にあるため理由はわかりません。
何か案は?