簡體   English   中英

C#顯式轉換錯誤

[英]C# Explicit Conversion Error

分享下面的代碼,請任何人告訴我是什么錯誤

  try
        {
            OrganoCollection = new ObservableCollection<HRM_Organogram>();

            foreach (var jobTypeDef in LobjWsHrmOeLinking.GetUnOccupiedRecordSearch())
            {


                OrganoCollection.Add(jobTypeDef);
            }
        }
        catch (Exception ex)
        {
            ApplicationClass.Message(ex.Message, "Error", MessageType.Error);

         }

並且函數的定義在下面的函數中給出,通過wcf服務使用

    public List<HRM_Organogram> GetUnOccupiedRecordSearch()
    {
        List<HRM_Organogram> p_objMaster = new List<HRM_Organogram>();
        try
        {
            using (var context = new CMS_ERPEntities())
            {
                context.ContextOptions.LazyLoadingEnabled = false;
                var l_objMaster = (from OG in context.HRM_Organogram
                                   join OE in context.HRM_OELinking
                                       on OG.OrganoID equals OE.OrganoID
                                   where OE.FinalizeStatus == true
                                   select OG.OrganoID).ToList();

                p_objMaster = (from OG in context.HRM_Organogram
                               where !l_objMaster.Contains(OG.OrganoID)
                               && OG.Isactive==true
                               select OG).ToList();


        }
        }
        catch (Exception ex)
        {
            throw ex;
        }
        return p_objMaster;
    }

錯誤是:

參數類型CMS_ERPClient.Service.HRM_OeLinking.HRM_Organogram與CMS_ERPClient.Service.HRM_OrganGram.HRM_OrganGram不相關

有不止一種類型稱為HRM_Organogram ,一種在名稱空間CMSERPClient_Service.HRM_OElinking ,另一種在名稱空間CMS_ERPClientService.HRMORganogram 您正在嘗試將后者添加到前者的集合中。 檢查您的using語句。

如果我可以說,您的名稱空間和類型名稱太糟糕了! 重構它們以使用更具描述性和獨特性的名稱,您將獲得更加愉悅的編碼體驗!

我的猜測是一種是DTO類型,一種是模型類型,您將在某個地方有一個映射器來進行轉換。 我還猜想這句話對您沒有多大意義-嘗試看看如何在其他地方使用這些類型,並尋找對兩者都具有using語句並將其轉換為另一種的代碼。

暫無
暫無

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

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