【发布时间】:2016-10-14 21:03:32
【问题描述】:
我正在收听进入我的服务器的“推送”通知。我已经使用所有可能的属性设置了SubscriptionModel,并且我可以正确地遍历通过的 JSON 主体,解析每个订阅,并在返回我创建的列表之前修改输出。但是,我想知道当我根本不需要返回 SubscriptionModel 的属性时,我该如何去删除它们;或者如果它们为空,则在回复 List<SubscriptionModel> subscriptions 之前将其删除。
namespace TextMessagingListener.Controllers
{
public class SubscriptionModel
{
public long push_id { get; set; }
public string request_id { get; set; }
public string subscription_id { get; set; }
public string message { get; set; }
public string status_code { get; set; }
public string error_message { get; set; }
}
[Route("api/[controller]")]
public class SubscriptionController : Controller
{
// PUT api/subscription
[HttpPut]
public List<SubscriptionModel> Put([FromBody] List<SubscriptionModel> model)
{
// Receive a report of whether your subscription(s) was successfully added or not.
List<SubscriptionModel> subscriptions = new List<SubscriptionModel>();
foreach (SubscriptionModel m in model)
{
m.message = "Push notification successfully received.";
subscriptions.Add(m);
}
return subscriptions;
}
}
}
我能想到的唯一解决方案是创建另一个仅用于返回信息的对象;并应用我要发送的每个subscriptions 项目。
【问题讨论】:
-
旁注:你应该写你的属性
Pascalcase msdn.microsoft.com/en-us/library/x2dbyw72(v=vs.71).aspx -
@Sybren 很高兴知道继续前进。
-
@Sybren 旁注:“you”的拼写不止一个;)。
-
@MikeMcCaughan >>>你