在我的解決方案,有2個項目:幫助和Service.Helper項目有服務循環依賴錯誤,而試圖添加引用
參考在幫助項目中,我有
文化助手
public static class CultureHelper
{
public static Location GetLocationBasedOnCulture(string cultureName)
{
Location location = Location.UK;
if (cultureName == Constants.CultureConstants.Italy)
{
location = Location.Italy;
}
return location;
}
}
文化常量:
public static class CultureConstants
{
public static readonly string UK = "en-GB";
public static readonly string Italy = "it-IT";
}
在服務我想添加這個方法:
public Enum DetermineLocation()
{
var culture = CultureHelper.GetCurrentCulture();
Location location = CultureHelper.GetLocationBasedOnCulture(culture);
return location;
}
我想一個方法添加到使用靜態CultureHelper一流的服務,但我無法添加引用服務幫手因爲它會導致循環依賴。我如何繼續這樣做。正在創建一個接口來解決這個問題,以及如何。
目前尚不清楚(CultureHelper)在哪一方面取決於「服務」,因此不清楚循環依賴的產生方式。 –
你需要第三個助手項目。您不能以這種方式添加參考。一個項目應該添加對其他項目的引用以及其他不能添加已經參照該項目的項目的引用。 –
@BhubanShrestha - 你可以在.NET程序集之間有循環依賴關係,但它遠非常規,我通常會推薦它。 (許多中央程序集都有這樣的交叉引用) –