【发布时间】:2018-09-27 01:46:33
【问题描述】:
假设我有一个对象,我想在我的应用程序中获取所有属性,但我想限制一些从我的 Web API 发送回用户的属性。我的班级如下:
public class NodeModel : TableEntity
{
public NodeModel(string PK, string RK)
{
this.PartitionKey = PK;
this.RowKey = RK;
}
public NodeModel() {}
public string Value1 { get; set; }
public string Value2 { get; set; }
}
所以当我在我的应用程序中使用NodeModel 时,我想访问:
object.PartitionKey
object.RowKey
object.Value1
object.Value2
当我从 Azure 表返回查询时,我最终会发送所有属性,包括 Timestamp 和 ETag 值。我不确定这是否很重要,但我想知道如何限制发回的内容。例如:
object.PartitionKey
object.RowKey
object.Value2
我有一个方法可以将入站 JSON 负载直接反序列化到我的NodeModel,然后简单地返回它:
string data = await req.Content.ReadAsStringAsync();
NodeModel nodeData = Newtonsoft.Json.JsonConvert.DeserializeObject<NodeModel>(data);
return req.CreateResponse(HttpStatusCode.OK, nodeData)
除了创建NodeModel 类型的新对象,然后为每个对象手动设置属性之外,是否有更好的方法给定 getter/setter 或 public/private 关键字?
【问题讨论】:
标签: c# class azure-table-storage