首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >使用Lightswitch保存时数据校验

使用Lightswitch保存时数据校验
EN

Stack Overflow用户
提问于 2014-01-17 03:52:31
回答 1查看 129关注 0票数 0

现在我有一个表格,我正在输入spud日期和发布日期。我想要验证在添加新行时,它会在当前表中查看是否有任何其他spud日期,以确保新的spud日期晚于前一个spud日期,并在添加新行之前验证它是否具有发布日期。任何人都知道怎么做。

代码语言:javascript
复制
if (this.ReleaseDate < SpudDate)
{
    results.AddPropertyError("Release Date cannot be before Spud Date");
}

我在validate函数中有这段代码,但这只在输入当前项时才有。正如我所说的,我还需要返回并查看其他记录以进行比较。

代码语言:javascript
复制
     partial void ReleaseDate_Validate(EntityValidationResultsBuilder results)
      {
     IDataServiceQueryable<tblWellRigJunction> orders = (from o in  this.DataWorkspace.RigStatusData.tblWellRigJunctions
                                                            orderby o.ReleaseDate
                                                            where WellID.Equals(this.WellID)
                                                            select o).Take(1);

  foreach (tblWellRigJunction ord in orders)
        {

            if (ord.ReleaseDate.ToString() == "")
            {
                results.AddPropertyError("Previous Release Date entered is still null");
                return;
            }

            int result = DateTime.Compare(ord.SpudDate, this.SpudDate);

            if (result > 0)
            {
                results.AddPropertyError("Previous Spud Date is greater");
                return;
            }
        } 
EN

回答 1

Stack Overflow用户

发布于 2014-01-17 21:41:41

您可以创建一个简单的查询,该查询使用表中的所有记录,并按spud日期对它们进行排序。如果按降序对spud日期进行排序,则可以与.FirstOrDefault()进行比较。

代码语言:javascript
复制
if (SpudDate < this.MySpudDates.FirstOrDefualt().SpudDate)
{
    results.AddPropertyError("New Spud Date cannot be before Previous Spud Date");
}
票数 1
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/21171503

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档