【问题标题】:ILMerge with Microsoft.Servicebus.dll for CRM pluginILMerge 与 Microsoft.Servicebus.dll 的 CRM 插件
【发布时间】:2018-03-15 17:25:52
【问题描述】:

我正在尝试使用 ILMerge 将 Microsoft.Servicebus.dll 合并到我的 CRM 插件 dll 中。出于某种原因,我在尝试构建我的项目时不断收到以下错误;

不允许未解析的程序集引用:Microsoft.Azure.Services.AppAuthentication。

我为每个 dll 使用的版本在下面的屏幕截图中列出。我不知道为什么会发生这种情况,但如果我将servicebus dll 的版本更改为 4.1.6,它就会起作用。 (如果我这样做,在实际运行CRM 插件代码时会出现另一个错误,所以我想使用 4.1.7)。

【问题讨论】:

    标签: c# visual-studio visual-studio-2015 microsoft-dynamics ilmerge


    【解决方案1】:

    对于任何人的信息,最后我没有将服务总线 dll 与插件代码合并。我调用了一个 Azure 函数(通过使用 WebClient 的 Webhook)。 Azure 函数有 servicebus dll 和代码,而不是我的插件。插件最终做的就是调用这个函数。

            public static void FileCopy(string source, string dest, string webhookurl)
        {
            using (var client = new WebClient { Headers = { [HttpRequestHeader.ContentType] = "application/json" } })
            {
                var paramRecord = new Parameters(source, dest);
    
                var serializer = new DataContractJsonSerializer(typeof (Parameters));
                var memoryStream = new MemoryStream();
                serializer.WriteObject(memoryStream, paramRecord);
    
                // todo handle the removal of escaped strings better
                var jsonObject = Encoding.Default.GetString(memoryStream.ToArray()).Replace(@"\", "");
    
                string response = client.UploadString(webhookurl, jsonObject);
            }
        }
    

    【讨论】:

      猜你喜欢
      • 2018-07-27
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      相关资源
      最近更新 更多