小编Chr*_*res的帖子

在Json.NET序列化中有没有办法区分"null因为不存在"和"null因为null"?

我正在ASP.NET webapi代码库中工作,我们在很大程度上依赖于通过JSON.NET自动支持将消息体的JSON反序列化为.NET对象.

作为构建我们的一个资源的补丁支持的一部分,我非常希望区分JSON对象中不存在的可选属性与明确为null的相同属性.我的意图是使用第一个"不要改变那里有什么"与"删除这个东西".

有没有人知道是否有可能标记我的C#DTO,以便在反序列化时,JSON.NET可以告诉我它是哪种情况?现在他们只是空出来,我不知道为什么.

相反,如果有人能够提出一个更好的设计,不需要我这样做,同时仍然支持补丁动词,我很想听听你的建议.

作为一个具体的例子,考虑将传递给put的这个有效负载:

{
  "field1": "my field 1",
  "nested": {
    "nested1": "something",
    "nested2": "else"
  }
}
Run Code Online (Sandbox Code Playgroud)

现在,如果我只想更新field1,我应该能够将其作为HTTP补丁发送:

{
  "field1": "new field1 value"
}
Run Code Online (Sandbox Code Playgroud)

并且嵌套值将保持不变.但是,如果我发送了这个:

{
  "nested": null
}
Run Code Online (Sandbox Code Playgroud)

我想知道这意味着我应该明确删除嵌套数据.

c# asp.net json json.net asp.net-web-api

16
推荐指数
2
解决办法
2232
查看次数

使用Jenkins构建Unity项目失败

我正在尝试在Mac OS Server上与Jenkins一起构建Unity项目.但是当我尝试运行以下脚本时

/Applications/Unity/Unity.app/Contents/MacOS/Unity -quit -batchmode ${PROJECT_PATH} -executeMethod BuildScript.DevelopmentBuild
Run Code Online (Sandbox Code Playgroud)

该脚本显示了这一点,

_RegisterApplication(),FAILED建立与WindowServer的默认连接,_CGSDefaultConnection()为NULL.

有谁知道如何解决这个问题?

iphone macos android unity-game-engine jenkins

14
推荐指数
1
解决办法
1万
查看次数

是否有官方/非官方的方式在python中编写Unity脚本?

我更喜欢使用python,但Unity只支持C#,JavaScript和Boo.是否有官方方式使用python(理想情况为3.x)或非官方补丁?

python unity-game-engine python-3.x

11
推荐指数
1
解决办法
1万
查看次数

Unity Container多个相同接口的实现

我正在研究统一容器,并且有一个关于如何将类的构造解析为接口的多个不同实现的快速问题.

这是我的代码:

public interface IRenderer
{
    void DrawSquare(Square square);
    void DrawCircle(Circle circle);
}

public interface IShape
{
    void Draw(IRenderer renderer);
}

public class Dx11Renderer : IRenderer
{
    public void DrawSquare(Square square)
    {
    }

    public void DrawCircle(Circle circle)
    {
    }
}

public class GlRenderer : IRenderer
{
    public void DrawSquare(Square square)
    {
    }

    public void DrawCircle(Circle circle)
    {
    }
}

public class Circle : IShape
{
    public void Draw(IRenderer renderer) { renderer.DrawCircle(this); }   
}

public class Square
{
    public void Draw(IRenderer …
Run Code Online (Sandbox Code Playgroud)

.net c# unity-container

8
推荐指数
1
解决办法
1万
查看次数

通过不绘制不可见的东西来降低绘制调用

我正在寻找优化游戏的方法.

我在想是否有办法不在相机视图中绘制但观察者看不到的对象?

问题是我需要降低我的绘制调用,并且在任何给定时间,至少有12个游戏对象对相机不可见.可以这样做吗?

unity-game-engine

6
推荐指数
1
解决办法
3143
查看次数

如何在Unity C#脚本中引用ServiceStack库?

我必须制作一个Unity脚本来导入和导出一些3D模型.我正在尝试从我的脚本中引用Servicestack.Redis,以便我可以与redis交谈.它编译得很好,但统一不会加载库.

我已经将Build/Release/MonoDevelop/SericeStack.Redis.zip中的dll复制到了unity中的assets文件夹中(这是正确的吗?)我只是通过克隆https://github.com/ServiceStack/ServiceStack.Redis来获得ServiceStack

当Unity试图加载脚本时,它说

Internal compiler error. See the console log for more information. output was:
Unhandled Exception: System.Reflection.ReflectionTypeLoadException: The classes in the module cannot be loaded.
  at (wrapper managed-to-native) System.Reflection.Assembly:GetTypes (bool)
  at System.Reflection.Assembly.GetTypes () [0x00000] in <filename unknown>:0 
  at Mono.CSharp.RootNamespace.ComputeNamespaces (System.Reflection.Assembly assembly, System.Type extensionType) [0x00000] in <filename unknown>:0 
  at Mono.CSharp.RootNamespace.ComputeNamespace (Mono.CSharp.CompilerContext ctx, System.Type extensionType) [0x00000] in <filename unknown>:0 
  at Mono.CSharp.GlobalRootNamespace.ComputeNamespaces (Mono.CSharp.CompilerContext ctx) [0x00000] in <filename unknown>:0 
  at Mono.CSharp.Driver.LoadReferences () [0x00000] in <filename unknown>:0 
  at Mono.CSharp.Driver.Compile () [0x00000] in …
Run Code Online (Sandbox Code Playgroud)

unity-game-engine servicestack

5
推荐指数
1
解决办法
1956
查看次数

最后编译一个脚本编译

有没有办法(最好在代码中但是检查员也可以工作)也可以在最后编译一个脚本?我检查了统一脚本参考,并说它把它放在编辑器文件夹中,但这会弄乱我的组织有什么方法可以吗?

unity-game-engine

0
推荐指数
1
解决办法
929
查看次数

每个单词的Javascript字符串反向

我有一个字符串"这应该更好",我需要把它作为"sihT dlouhs eb retteb"

我能够拆分字符串,但之后我无法逆转它.

str="This should be better"
str.split(" ")
//["This", "should", "be", "better"]
Run Code Online (Sandbox Code Playgroud)

在此之后如何将其反转为"sihT dlouhs eb retteb"

javascript

0
推荐指数
1
解决办法
79
查看次数