我有以下匿名类型:

new {data1 = "test1", data2 = "sam", data3 = "bob"}

我需要一个方法来接受它,并在数组或字典中输出键值对.

我的目标是将其用作HttpRequest中的post数据,以便最终将其连接到以下字符串中:

"data1=test1&data2=sam&data3=bob"

推荐答案

这只需要一点点思考就可以完成.

var a = new { data1 = "test1", data2 = "sam", data3 = "bob" };
var type = a.GetType();
var props = type.GetProperties();
var pairs = props.Select(x => x.Name + "=" + x.GetValue(a, null)).ToArray();
var result = string.Join("&", pairs);

.net相关问答推荐

Powershell机器令牌组

如何将 signalR 添加到不同项目中的后台服务?

F#:跨度、提升和底部类型(或缺乏)

使用 PostAsJsonAsync C# 时出现错误请求

Erlang 的让它崩溃的哲学 - 适用于其他地方吗?

将 Moq 模拟对象传递给构造函数

为什么我得到 411 Length required 错误?

C# 是否(或将)包含用于副作用验证的功能?

.net:System.Web.Mail 与 System.Net.Mail

msbuild,定义条件编译符号

C# 测试字符串是否为整数?

我可以在没有两个查询的情况下通过布尔标准将 IEnumerable 一分为二吗?

如何在 RabbitMQ 中设置重试次数?

C# List<> 按 x 然后 y 排序

如何访问 Session 变量并在 javascript 中设置它们?

根据条件从列表中删除项目

在 WPF 中设置 Tab 键顺序

C# 应用程序中的资源和嵌入式资源有什么区别?

嵌套捕获组如何在正则表达式中编号?

无法添加对 dll 的引用