首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >powershell中的LitJSON错误

powershell中的LitJSON错误
EN

Stack Overflow用户
提问于 2013-05-28 19:11:53
回答 1查看 1.2K关注 0票数 0

我正在尝试使用莱昂纳多B的利特森库来自PowerShell。我需要使用的库的入口点是一个静态方法。我可以加载程序集的附加类型,没有问题。但是,尝试使用静态方法会出现以下错误:

代码语言:javascript
复制
PS C:\Users\david>[litjson.jsonmapper]::toobject("{`"foo`":`"bar`"}")
format-default : The JsonData instance has to be initialized first
    + CategoryInfo          : NotSpecified: (:) [format-default], InvalidOperationException
    + FullyQualifiedErrorId : System.InvalidOperationException,Microsoft.PowerShell.Commands.FormatDefaultCommand

我认为发生的事情是这个类的静态构造函数没有运行,但是Lars Truijens纠正了这种误解。错误是来自JsonData类的异常。尽管同一行代码在VS2012中正确工作(针对.net 3.5),但它不会在powershell中运行。

更新:

此单元测试在visual studio 2012中通过:

代码语言:javascript
复制
using System;
using Microsoft.VisualStudio.TestTools.UnitTesting;
using LitJson;

namespace litjsonTest
{
    [TestClass]
    public class TestJsonMapper
    {
        [TestMethod]
        public void TestMethod1()
        {
            var obj = LitJson.JsonMapper.ToObject("{\"foo\":\"bar\"}");
            Assert.IsNotNull(obj);
        }
    }
}
EN

回答 1

Stack Overflow用户

发布于 2013-05-28 19:31:22

这将完全破坏.Net。我怀疑这一点。更重要的是,由于错误来自JsonData类,并且是因为该类的(非静态)构造函数没有设置类型字段。请参阅http://couchbrowse.googlecode.com/svn/trunk/LitJson/JsonData.cs,您确定您的LitJson代码是正确的吗?这些代码在C#程序中工作吗?

更新

你确定你的Json是对的吗?你贴的例子不是,应该有双引号。尝试转义,使用后勾号或使用这里-字符串

代码语言:javascript
复制
[litjson.jsonmapper]::toobject("{`"foo`":`"bar`"}")
票数 1
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/16799634

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档