c# - SQL Server 中的日期列到 ASP.NET 模型中的 System.DateTime

标签 c# sql asp.net sql-server date

我的 SQL Server 数据库中有一个 date_creation_user 列,类型为 date。 我使用 Entity Framework (数据库优先)所以在 User 模型类中我有:

public System.DateTime date_creation_user { get; set; }

我使用 POST 和 GET 方法创建了我的 Web API。

对于 POST,我输入数据:

{
    //
    "Date_creation_user": "2019-04-12"
}

使用 Get,结果是:

{
    "Client_ID": 1,
    "Date_creation_user": "2012-02-24T00:00:00",
}

我想获得一个清晰的 DATE 格式,因为我需要一个 GET 方法,以获取所有用户的创建日期,我该如何实现该方法?

这是我的两个 GET 方法和我的 POST 方法:

获取全部:

[HttpGet]
//[Authorize]
public async Task<HttpResponseMessage> Get()
{
    List<ClientModel> model = new List<ClientModel>();

    try
    {
        clService.GetClients().ToList().ForEach(a =>
        {
            ClientModel compts = new ClientModel
            {
                Client_ID = a.Client_ID,
                Type_Client = a.Type_Client,
                Date_creation_user = a.Date_creation_client

            };

            model.Add(compts);

        });
        return Request.CreateResponse(HttpStatusCode.OK, model);
    }
    catch (Exception ex)
    {
        return Request.CreateResponse(HttpStatusCode.BadRequest, ex);
    }
}

获取ID:

[HttpGet]
public HttpResponseMessage find(int id)
{
    try
    {
        var result = new HttpResponseMessage(HttpStatusCode.OK);
        result.Content = new StringContent(JsonConvert.SerializeObject(clService.GetClient(id)));
        result.Content.Headers.ContentType = new MediaTypeHeaderValue("application/json");
        return result;
    } 
    catch
    {
        return new HttpResponseMessage(HttpStatusCode.BadRequest);
    }
}

发布:

[HttpPost]
public HttpResponseMessage CreateClient(CLIENT Client)
{
    try
    {
        var result = clService.AjoutClient(Client);
        return Request.CreateResponse(HttpStatusCode.Created, result);
    }
    catch (Exception ex)
    {
        return Request.CreateResponse(HttpStatusCode.InternalServerError, ex.Message);
    }
}

如何实现带日期参数的 GET 方法?

谢谢

最佳答案

改变这一行:

Date_creation_user = a.Date_creation_client.ToString("yyyy-MM-dd")

关于c# - SQL Server 中的日期列到 ASP.NET 模型中的 System.DateTime,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/55675377/

相关文章:

c# - 使用 dll 引用构建 .NET Core

c# - 每次按键仅允许 1 个值

c# - sql更新语法

asp.net - 在asp.net中读取.ofx、.qif文件

c# - 如何在 ASP.NET MVC Controller 中反序列化 json 数组数据

c# - Jquery 在客户端对 gridview 列进行排序

mysql - WHERE 条件中的 IF 语句

c# - 带单引号的 SQL 查询

php - 如何在没有嵌套循环的情况下使 SELECT 更快

c# - 可以在 ASPX 标记中执行内联代码吗?