在C#中将字符串转换为json格式。 Newtonsoft.json显示黄色标记

时间:2019-01-03 07:33:59

标签: c# .net ssis msbi

我是SSIS的新手。我正在尝试将字符串转换为JSON格式,如图所示。我安装了Newtonsoft Json。但是它显示黄色三角形标记。

我已经安装了所有版本的Newtonsoft。但是在#

时它仍然显示错误
region Namespaces
using Newtonsoft.Json.Linq;
using System;
using System.Windows.Forms;#
endregion

namespace ST_9a0af2e4537b4d26adaef11149343faa {

 public partial class ScriptMain: Microsoft.SqlServer.Dts.Tasks.ScriptTask.VSTARTScriptObjectModelBase {



  public void Main() {


   var myJsonString = "{report: {Id: \"aaakkj98898983\"}}";
   MessageBox.Show(myJsonString);

   try {
    // when i add this line to my package then the package is not 
    excuting.if i remove this line then package is excuting.
    JObject.Parse("{report: {\"Id\": \"aaakkj98898983\"}}");
   } catch (Exception e) {
    MessageBox.Show(e.ToString());
   }




   Dts.TaskResult = (int) ScriptResults.Success;
  }

 }
}

脚本任务。我的IDE版本是Visual Studio 2015 Professional。

安装Newtonsoft之后不显示。当我关闭脚本任务弹出窗口并再次打开脚本任务编辑器时,它显示黄色的感叹号,当我选择Newtonsoft软件包并检查属性时,其路径和版本显示为0.0.0.0。然后,我下载了Newtonsoft软件包并引用了newtonsoft.json.dll文件添加参考。然后显示路径和版本。

但是当我运行程序包时,它显示错误。

我也尝试过关注这篇文章,但是没有成功。

Convert JSON String to JSON Object c# https://www.c-sharpcorner.com/article/json-serialization-and-deserialization-in-c-sharp/ https://www.newtonsoft.com/json/help/html/M_Newtonsoft_Json_Linq_JObject_Parse.htm https://www.nuget.org/packages/System.Json/ How to parse JSON without JSON.NET library? Json does not exist in the namespace System Parse JSON string using C# script in SSIS https://docs.microsoft.com/en-us/nuget/quickstart/install-and-use-a-package-in-visual-studio https://www.dotnetjalps.com/2014/04/converting-csharp-object-json-string.html Cannot find JavaScriptSerializer in .Net 4.0

https://riptutorial.com/json-net/topic/1861/getting-started-with-json-net http://www.rockprogrammer.com/2017/08/how-to-install-json-.net-in-visual-studio-2015.htmls

能帮我解决这个问题吗?

谢谢
雪芙罗伊

2 个答案:

答案 0 :(得分:0)

对Newtonsoft.Json的引用可能很少(例如您的一个程序集也可能引用指定的版本)。

要检查是否可以使用AsmSpy工具通过以下命令检查程序集引用:

AsmSpy "Here is the path to your bin directory"

请在此处详细了解有关AsmSpy的更多信息:https://github.com/mikehadlow/AsmSpy

这可能有助于分析您的参考文献有什么问题

答案 1 :(得分:0)

感谢大家。

最后,我能够通过流动问题来解决问题 Joost van Rossum的文章。感谢Joost van Rossum

将程序集添加到GAC 在使用程序集之前,我们必须将其添加到全局程序集缓存(GAC)中。再次打开Visual Studio 2008命令提示符(对于Vista / Windows7 / etc。以管理员身份打开它)。并执行以下命令。 gacutil / i d:\ myMethodsForSSIS \ myMethodsForSSIS \ bin \ Release \ myMethodsForSSIS.dll

有关更多信息,请阅读本文 http://microsoft-ssis.blogspot.com/2011/05/referencing-custom-assembly-inside.html https://social.msdn.microsoft.com/Forums/sqlserver/en-US/d70cac36-6aa5-42cb-89a8-1a24cb5a0cad/cant-find-external-dll-reference-in-ssis-2012-script-task?forum=sqlintegrationservices