小编Col*_*n M的帖子

如何在c#中动态创建JSON对象(来自ASP.NET资源文件)?

我需要将资源文件(.resx)中的字符串序列化为JSON对象.资源文件的密钥不断变化,因此我不能只创建一个接受适当值的C#对象.它需要是一个动态的解决方案.我能够遍历文件的键值对,但我需要一种简单的方法将它们序列化为JSON.

我知道我能做到:

Object thing = new {stringOne = StringResource.stringOne; ...}
Run Code Online (Sandbox Code Playgroud)

但是,我宁愿有类似的东西:

Object generic = {}
foreach (DictionaryEntry entry in StringResource) {
    generic.(entry.Key) = entry.Value
}
Run Code Online (Sandbox Code Playgroud)

或者我应该创建一个自定义JSON序列化程序来构造对象零碎(即foreach循环,每个循环附加一部分JSON字符串)?

编辑
我最终写了一个快速的JSON序列化程序,一次构造一个字符串字符串.我不想包含一个完整的JSON库,因为这是JSON对象的唯一用途(至少目前为止).最终,我想要的可能是不切实际的,并且不存在,因为其功能更好地由其他数据结构提供.谢谢你的所有答案!

c# asp.net resources json

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

使用Pipe在进程之间传输Python对象时的字节限制?

我有一个使用64位Python 3.3.0 CPython解释器在64位Linux(内核版本2.6.28.4)机器上运行的自定义模拟器(用于生物学).

因为模拟器依赖于许多独立实验来获得有效结果,所以我建立了并行处理来运行实验.线程之间的通信主要发生在具有托管multiprocessing Queues(doc)的生产者 - 消费者模式下 .该体系结构的破坏如下:

  • 处理产卵和管理Processes以及各种Queues 的主进程
  • N个工作进程进行模拟
  • 1结果消费者过程消耗模拟结果并对结果进行分类和分析

主进程和工作进程通过输入进行通信Queue.类似地,工作进程将结果放在Queue结果消费者进程从中消耗项目的输出中.最终的ResultConsumer对象通过multiprocessing Pipe (doc)传递回主进程.

一切正常,直到它试图通过以下方法将ResultConsumer对象传递回主进程Pipe:

Traceback (most recent call last):
  File "/home/cmccorma/.local/lib/python3.3/multiprocessing/process.py", line 258, in _bootstrap
    self.run()
  File "/home/cmccorma/.local/lib/python3.3/multiprocessing/process.py", line 95, in run
    self._target(*self._args, **self._kwargs)
  File "DomainArchitectureGenerator.py", line 93, in ResultsConsumerHandler
    pipeConn.send(resCon)
  File "/home/cmccorma/.local/lib/python3.3/multiprocessing/connection.py", line 207, in send
    self._send_bytes(buf.getbuffer())
  File "/home/cmccorma/.local/lib/python3.3/multiprocessing/connection.py", line 394, in _send_bytes
    self._send(struct.pack("!i", n))
struct.error: 'i' format requires -2147483648 …
Run Code Online (Sandbox Code Playgroud)

python parallel-processing struct multiprocessing

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

我可以在Global.asax之外修改MVC路由吗?

是否可以在global.asax文件之外修改路由(以及RouteTable),可能在控制器中?这是否可取?

我的询问原因与IIS 6和集成模式有关,不允许请求上下文调用.我正在为网站实施国际化并跟踪URL中的文化.文化最初从.config文件中读取并作为路由默认值加载.这个文件读取最终导致错误(堆栈的另外几步).我的基础是这里描述的方法.

asp.net asp.net-mvc asp.net-mvc-routing

7
推荐指数
1
解决办法
215
查看次数