簡體   English   中英

Ektron app_code和庫之間的ASP.Net庫名稱沖突

[英]ASP.Net Library name conflict between Ektron app_code and library

我有一個Ektron 8.2網站,我試圖將Quartz.NET集成到其中,以便進行一些調度。 Quartz.NET需要一個庫Common.Logging。 該庫引入了沖突並破壞了App_Code / VBCode中的Ektron代碼。

例如,Utilities.vb中的以下代碼

Case Is = Common.EkEnumeration.FolderType.Community
      imageURL &= "images/ui/icons/folderCommunity.png"
Case Common.EkEnumeration.FolderType.Catalog
      imageURL &= "images/ui/icons/folderGreen.png"

現在給出了編譯時錯誤-

App_Code\VBCode\Utilities.vb(703,0): error BC30456: 'EkEnumeration' is not a member of 'Common'.

似乎Common.Logging與Ektron.Cms.Common沖突(Ektron文件具有Imports Ektron.Cms語句)。 是否可以指定庫的優先級? 還是命名空間導入的庫?

更新 Utilities.vb代碼由Ektron編寫。 我想對此代碼不做任何更改,或進行最少的更改,因為任何更改都需要在Ektron升級后重新進行。 這實際上是2個庫之間的沖突-Ektron和Quartz.Net。 我可以在不更改任何一個庫代碼的情況下解決此沖突嗎? 別名庫是否有配置設置?

一個簡單的解決方案是使用完整的命名空間Ektron.Cms.Common.EkEnumeration,而不是依靠include來自動整理內容。

Case Is = Ektron.Cms.Common.EkEnumeration...

不優雅,但是應該讓您重新工作。

另一種選擇是使用名稱空間別名

using EkCommon = Ektron.Cms.Common;

因此,您的代碼將改為:

EkCommon.EkEnumeration.FolderType.Community

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM