Sea*_*ham 5 c# dynamic json.net
我正在使用JSON.NET将JSON文件反序列化为dynamicC#中的对象.
在方法内部,我想传入一个string并引用动态对象中的指定属性.
例如:
public void Update(string Key, string Value)
{
File.Key = Value;
}
Run Code Online (Sandbox Code Playgroud)
File动态对象在哪里,并且Key是传入的字符串.假设我想传入键"foo"和值"bar",我会这样做:
Update("foo", "bar");但是由于dynamic对象类型的性质,这导致了
{
"Key":"bar"
}
Run Code Online (Sandbox Code Playgroud)
相反:
{
"foo":"bar"
}
Run Code Online (Sandbox Code Playgroud)
有可能用动态对象做我在这里问的问题吗?
我怀疑你可以使用:
public void Update(string key, string Value)
{
File[key] = Value;
}
Run Code Online (Sandbox Code Playgroud)
这取决于动态对象如何实现索引,但如果这是 Json.NETJObject或类似对象,我希望它能工作。但重要的是要理解它并不能保证适用于一般dynamic表达式。
如果您实际上只需要这种操作(至少在类中),您可以考虑使用JObject作为字段类型,然后dynamic在需要时公开它。
| 归档时间: |
|
| 查看次数: |
204 次 |
| 最近记录: |