为什么我不能在asp.net上使用ToShortDateString

杰拉德·邦克斯(JeraldPunx)

我可以在这里看到...

我曾经这样d.PODate.ToString()显示(请参阅图片),我可以使用inspect元素看到它……我只想显示日期而不是时间,当我尝试使用d.PODate.ToString("d")它时,给了我这样的错误Method 'System.String ToString(System.String)' has no supported translation to SQL,同样也d.PODate.ToShortDateString()得到了这样的错误Method 'System.String ToShortDateString()' has no supported translation to SQL.

编辑

这是我的GET方法

[HttpGet]
public Models.SysDataTablePager Get()
{
    NameValueCollection nvc = HttpUtility.ParseQueryString(Request.RequestUri.Query);

    string sEcho = nvc["sEcho"].ToString();
    int iDisplayStart = Convert.ToInt32(nvc["iDisplayStart"]);
    string sSearch = nvc["sSearch"].ToString();
    int iSortCol = Convert.ToInt32(nvc["iSortCol_0"]);
    string sSortDir = nvc["sSortDir_0"].ToString();

    var BranchId = Convert.ToInt32(((wfmis.Global)HttpContext.Current.ApplicationInstance).CurrentBranchId);

    var Count = db.TrnPurchaseOrders.Where(d => d.MstUser.Id == secure.GetCurrentUser() && 
    d.MstBranch.Id == BranchId).Count();

    var PurchaseOrders = from d in db.TrnPurchaseOrders
                         where d.MstBranch.Id == BranchId &&
                               d.MstBranch.MstUser.Id == secure.GetCurrentUser()
                         select new Models.TrnPurchaseOrder
                         {
                             Id = d.Id,
                             PeriodId = d.PeriodId,
                             Period = d.MstPeriod.Period,
                             BranchId = d.BranchId,
                             Branch = d.MstBranch.Branch,
                             PONumber = d.PONumber,
                             POManualNumber = d.POManualNumber,
                             //PODate = d.PODate.ToShortDateString(),
                             PODate = d.PODate.ToShortDateString(), //<------
                             SupplierId = d.SupplierId,
                             Supplier = d.MstArticle.Article,
                             TermId = d.TermId,
                             Term = d.MstTerm.Term,
                             RequestNumber = d.RequestNumber,
                             //DateNeeded = d.DateNeeded.ToShortDateString(),
                             DateNeeded = d.DateNeeded.ToString(), //<------
                             Particulars = d.Particulars,
                             RequestedById = d.RequestedById == null ? 0 :
                                             d.RequestedById.Value,
                             RequestedBy = d.MstUser.FullName,
                             IsClosed = d.IsClosed,
                             PreparedById = d.PreparedById,
                             PreparedBy = d.MstUser.FullName,
                             CheckedById = d.CheckedById,
                             CheckedBy = d.MstUser1.FullName,
                             ApprovedById = d.ApprovedById,
                             ApprovedBy = d.MstUser2.FullName,
                             IsLocked = d.IsLocked,
                             CreatedById = d.CreatedById,
                             CreatedBy = d.MstUser3.FullName,
                             //CreatedDateTime = d.CreatedDateTime.ToShortDateString(),
                             CreatedDateTime = d.CreatedDateTime.ToString(),
                             UpdatedById = d.UpdatedById,
                             UpdatedBy = d.MstUser4.FullName,
                             //UpdatedDateTime = d.UpdatedDateTime.ToShortDateString()
                             UpdatedDateTime = d.UpdatedDateTime.ToString()
                         };

    switch (iSortCol)
    {
        case 2:
            if (sSortDir == "asc") PurchaseOrders = PurchaseOrders.OrderBy(d => d.PODate).Skip(iDisplayStart).Take(10);
            else PurchaseOrders = PurchaseOrders.OrderByDescending(d => d.PONumber).Skip(iDisplayStart).Take(10);
            break;
        case 3:
            if (sSortDir == "asc") PurchaseOrders = PurchaseOrders.OrderBy(d => d.PONumber).Skip(iDisplayStart).Take(10);
            else PurchaseOrders = PurchaseOrders.OrderByDescending(d => d.PODate).Skip(iDisplayStart).Take(10);
            break;
        case 4:
            if (sSortDir == "asc") PurchaseOrders = PurchaseOrders.OrderBy(d => d.Supplier).Skip(iDisplayStart).Take(10);
            else PurchaseOrders = PurchaseOrders.OrderByDescending(d => d.Supplier).Skip(iDisplayStart).Take(10);
            break;
        default:
            PurchaseOrders = PurchaseOrders.Skip(iDisplayStart).Take(10);
            break;
    }

    var PurchaseOrderPaged = new Models.SysDataTablePager();

    PurchaseOrderPaged.sEcho = sEcho;
    PurchaseOrderPaged.iTotalRecords = Count;
    PurchaseOrderPaged.iTotalDisplayRecords = Count;
    PurchaseOrderPaged.TrnPurchaseOrderData = PurchaseOrders.ToList();

    return PurchaseOrderPaged;
}

编辑2

我在数据库的DateTime上得到了这个... 在此处输入图片说明

ps2goat

d来自数据库;目前,它不作为.NET对象存在。您正在要求LINQ-to-SQL在数据库中执行.ToShortDateString(),该数据库没有转换功能。

如果d选择这些值并.ToList()在查询末尾使用,则可以使用字符串格式化功能创建模型。

例如:

// original db query, still returns IQueryable.
var dbPurchaseOrders = from d in db.TrnPurchaseOrders
                         where d.MstBranch.Id == BranchId &&
                               d.MstBranch.MstUser.Id == secure.GetCurrentUser();

// change db query to local, in-memory object list
var localPurchaseOrders = PurchaseOrders.ToList();

// change the local db.TrnPurchaseOrders objects into your Models.TrnPurchaseOrder objects.
// kept the d variable because I'm too lazy to change all lines of your code.
var PurchaseOrders = from d in localPurchaseOrders
                         select new Models.TrnPurchaseOrder
                         {
                             Id = d.Id,
                             PeriodId = d.PeriodId,
                             Period = d.MstPeriod.Period,
                             BranchId = d.BranchId,
                             Branch = d.MstBranch.Branch,
                             PONumber = d.PONumber,
                             POManualNumber = d.POManualNumber,
                             //PODate = d.PODate.ToShortDateString(),
                             PODate = d.PODate.ToShortDateString(), //<------
                             SupplierId = d.SupplierId,
                             Supplier = d.MstArticle.Article,
                             TermId = d.TermId,
                             Term = d.MstTerm.Term,
                             RequestNumber = d.RequestNumber,
                             //DateNeeded = d.DateNeeded.ToShortDateString(),
                             DateNeeded = d.DateNeeded.ToString(), //<------
                             Particulars = d.Particulars,
                             RequestedById = d.RequestedById == null ? 0 : d.RequestedById.Value,
                             RequestedBy = d.MstUser.FullName,
                             IsClosed = d.IsClosed,
                             PreparedById = d.PreparedById,
                             PreparedBy = d.MstUser.FullName,
                             CheckedById = d.CheckedById,
                             CheckedBy = d.MstUser1.FullName,
                             ApprovedById = d.ApprovedById,
                             ApprovedBy = d.MstUser2.FullName,
                             IsLocked = d.IsLocked,
                             CreatedById = d.CreatedById,
                             CreatedBy = d.MstUser3.FullName,
                             //CreatedDateTime = d.CreatedDateTime.ToShortDateString(),
                             CreatedDateTime = d.CreatedDateTime.ToString(),
                             UpdatedById = d.UpdatedById,
                             UpdatedBy = d.MstUser4.FullName,
                             //UpdatedDateTime = d.UpdatedDateTime.ToShortDateString()
                             UpdatedDateTime = d.UpdatedDateTime.ToString()
                         };

本文收集自互联网,转载请注明来源。

如有侵权,请联系[email protected] 删除。

编辑于
0

我来说两句

0条评论
登录后参与评论

相关文章

来自分类Dev

为什么我不能在asp.net上使用ToShortDateString

来自分类Dev

为什么我的ASP.NET 5应用程序不能在IIS 7.5上运行?

来自分类Dev

为什么我的sql命令在ACCESS中显示正确的结果时不能在asp上运行?

来自分类Dev

为什么我不能在类上使用ConditionalAttribute?

来自分类Dev

为什么我的别名不能在ssh上使用?

来自分类Dev

为什么我不能在 DataFrame 上使用 sort 或 orderby?

来自分类Dev

为什么我不能在 Pycharm 上运行我的文件?

来自分类Dev

为什么我不能在桌子上继承父母的宽度?

来自分类Dev

为什么我的测试不能在MySQL上运行?

来自分类Dev

为什么我不能在Mac上正确安装ImageMagick?

来自分类Dev

为什么我不能在Ubuntu 12.04上编译GLIBC?

来自分类Dev

为什么我不能在Mac上安装任何gem?

来自分类Dev

为什么我不能在图像的画布上绘画?

来自分类Dev

为什么我的冻结期货不能在单核上运行?

来自分类Dev

为什么我的flask命令不能在Heroku上运行?

来自分类Dev

为什么我不能在Linux上终止此过程?

来自分类Dev

为什么我不能在Ubuntu 12.04上编译GLIBC?

来自分类Dev

为什么我不能在桌子上继承父母的宽度?

来自分类Dev

为什么我的函数不能在.resize()上运行?

来自分类Dev

为什么我不能在Beaglebone上编译USB代理?

来自分类Dev

为什么我不能在虚拟设备上写?

来自分类Dev

为什么我不能在面板上绘画

来自分类Dev

为什么我不能在图像上放置文字

来自分类Dev

为什么我的测试不能在MySQL上运行?

来自分类Dev

为什么我不能在svg路径上添加边框?

来自分类Dev

为什么我的php文件不能在xamppp上运行?

来自分类Dev

为什么我不能在ubuntu 18.04上安装mediatomb?

来自分类Dev

为什么我不能在 Windows 7 上安装 pip?

来自分类Dev

为什么我不能在框架 tkinter 上放置按钮

Related 相关文章

  1. 1

    为什么我不能在asp.net上使用ToShortDateString

  2. 2

    为什么我的ASP.NET 5应用程序不能在IIS 7.5上运行?

  3. 3

    为什么我的sql命令在ACCESS中显示正确的结果时不能在asp上运行?

  4. 4

    为什么我不能在类上使用ConditionalAttribute?

  5. 5

    为什么我的别名不能在ssh上使用?

  6. 6

    为什么我不能在 DataFrame 上使用 sort 或 orderby?

  7. 7

    为什么我不能在 Pycharm 上运行我的文件?

  8. 8

    为什么我不能在桌子上继承父母的宽度?

  9. 9

    为什么我的测试不能在MySQL上运行?

  10. 10

    为什么我不能在Mac上正确安装ImageMagick?

  11. 11

    为什么我不能在Ubuntu 12.04上编译GLIBC?

  12. 12

    为什么我不能在Mac上安装任何gem?

  13. 13

    为什么我不能在图像的画布上绘画?

  14. 14

    为什么我的冻结期货不能在单核上运行?

  15. 15

    为什么我的flask命令不能在Heroku上运行?

  16. 16

    为什么我不能在Linux上终止此过程?

  17. 17

    为什么我不能在Ubuntu 12.04上编译GLIBC?

  18. 18

    为什么我不能在桌子上继承父母的宽度?

  19. 19

    为什么我的函数不能在.resize()上运行?

  20. 20

    为什么我不能在Beaglebone上编译USB代理?

  21. 21

    为什么我不能在虚拟设备上写?

  22. 22

    为什么我不能在面板上绘画

  23. 23

    为什么我不能在图像上放置文字

  24. 24

    为什么我的测试不能在MySQL上运行?

  25. 25

    为什么我不能在svg路径上添加边框?

  26. 26

    为什么我的php文件不能在xamppp上运行?

  27. 27

    为什么我不能在ubuntu 18.04上安装mediatomb?

  28. 28

    为什么我不能在 Windows 7 上安装 pip?

  29. 29

    为什么我不能在框架 tkinter 上放置按钮

热门标签

归档