删除或伪造值CreatedAt和UpdatedAt列

时间:2018-10-01 23:00:08

标签: c# azure-mobile-services

我正在使用Azure移动服务和Azure sql数据库的C#后端。我有一个“运行”表,在其中创建了类和控制器。 RunItem.cs继承EntityData,其中包含CreatedAt和ModifiedAt对象。

由于我正在研究的项目的性质,我们认为这些会泄漏太多有关“运行”的信息。因此,我们要么希望删除这些列,要么只是插入虚拟数据。

我尝试过的一件事是直接从ITableData继承而不是从EntityData继承。这只是出现错误,指出这些对象不存在。

我尝试的另一件事是覆盖对象。这将创建一个运行时错误,我尚未完成跟踪。我所知道的是插入未完成。我所做的代码:

public new System.DateTimeOffset? CreatedAt
{
    get { return this.CreatedAt; }
    set => this.CreatedAt = new System.DateTimeOffset((long)0, new System.TimeSpan(0, 0, 0));
}

也许我缺少明显的代码,或者某处有标志会触发这些字段不被使用。另外,这可能是不可能的。

更新

我为RunItem提供的代码很简单,与Azure服务生成的代码相距不远。此后,我删除了覆盖我之前发布的CreatedAt的代码。

using Microsoft.Azure.Mobile.Server;
using System.ComponentModel.DataAnnotations;
using System.ComponentModel.DataAnnotations.Schema;

namespace AsureRunService.DataObjects
{
    public class RunItem : EntityData
    {
        public int RunNumber { get; set; }

        public string Cipher1 { get; set; }

        public string Cipher2 { get; set; }

        public string Stats { get; set; }

        public string Summary { get; set; }

        public string KeyId { get; set; }

        public string UserId { get; set; }
    }
}

0 个答案:

没有答案