如何序列化为c#代码?
Posted
技术标签:
【中文标题】如何序列化为c#代码?【英文标题】:How to serialize to c# code? 【发布时间】:2010-10-18 12:33:19 【问题描述】:我正在测试一个获取对象作为参数的 Web 服务。 为了创建这个对象,我通过一个我们正在维护的在线商店,最终结果是一个相当大的对象,我们可以称之为 BO,发送到网络服务。
现在我们似乎遇到了当 BO 处于特定状态时出现的错误。 我乏味地通过在线商店创建我正在检查的 BO 状态,然后在调试中观察 Web 服务如何处理它。
这可能会发生多次,每次都需要时间和精力。 我仍然可以在调试模式下观察 BO 的正确状态。我可以将它序列化为方便的 XML。我梦想能够将其序列化为 c# 代码。我没有在网上找到它。我发现序列化为 XML,并序列化为 JSON。
我的问题是: 你知道我如何将它序列化为 c# 代码,以便我可以轻松地为这个特定的业务案例制作一个测试用例吗?
对于如何解决这类问题,您还有其他建议吗?
有用的回答来自 Sixto Saez
保存服务调用请求状态的最简单方法是拦截并存储发送到服务的soap消息,因为它存储了完整的对象状态。您可以使用 Fiddler 之类的工具来访问肥皂消息并将其保存到文件中。接下来,您将编写一个简单的应用程序,该应用程序将使用 .NET HttpWebRequest 对象将存储的 soap 提交给服务。
【问题讨论】:
【参考方案1】:您要解决的问题是检索对象的存储状态,以便您可以使用该状态重复调用服务以进行调试。听起来您还想在进行服务调用之前更改状态。
此方案的一个选项是使用名为 WcfTestClient 的 Visual Studio 工具。这个link 记录了如何使用客户端。运行它并填充“BO”状态后,您可以重复编辑并将更新的参数重新提交给服务方法。不幸的是,每次运行 WcfTestClient 应用程序时,您都必须手动填充参数,因为无法保存参数值。希望这会有所帮助!
【讨论】:
我不必更改“BO”。我只是在谈论重复测试/调试相同的状态。 我真的很想自动化该州的人口 保存服务调用请求状态的最简单方法是截取并存储发送到服务的soap消息,因为它存储了完整的对象状态。您可以使用 Fiddler 之类的工具来访问肥皂消息并将其保存到文件中。接下来,您将编写一个简单的应用程序,该应用程序将使用 .NET HttpWebRequest 对象将存储的肥皂提交给服务。以上是关于如何序列化为c#代码?的主要内容,如果未能解决你的问题,请参考以下文章
如何将复杂的 C# 类序列化为 XML 并将其作为 .net 核心 API 的响应发送?