資料表:
Web Api:
public class OrderRequest
{ .......
public DateTime StarDate { get; set; }
........
}
public class PriceAfterChange
{
public DateTime Date { get; set; } //日期
public int Price { get; set; } //價格
}
public IEnumerable<PriceAfterChange> Post([FromBody] OrderRequest request)
{
//讀取 價格有變動的天數與日期
string redchangeday = "Select [ChangeDate],[Price] from [RoomPriceAdjust] where [ChangeDate]>=@date";
var a = this.Connection.Query<PriceAfterChange>(redchangeday, new { date = request.StarDate });
return a;
}
Call Api結果:
請問 為什麼讀出來的日期會是這樣子
謝謝各位
"Select [ChangeDate] AS 'Date',[Price] from [RoomPriceAdjust] where [ChangeDate]>=@date"
那個溢位剛剛有找到文章 後來發現是我傳值打錯而已 沒有溢位的問題了 謝謝
-------------可以了----------------
public class PriceAfterChange
{
public DateTime ChangeDate { get; set; } //日期 (原本是 Date 把它改成 ChangeDate)
public int Price { get; set; } //價格
}
public IEnumerable<PriceAfterChange> Post([FromBody] OrderRequest request)
{
//讀取 價格有變動的天數與日期
string redchangeday = "Select [ChangeDate],[Price] from[RoomPriceAdjust] where [ChangeDate]>=@date";
var a = this.Connection.Query<PriceAfterChange>(redchangeday,new { date=request.StartDate});
return a;
}
有正確日期出現了
你SQL先轉型文字試試~
Select Convert(varchar,[ChangeDate],111) [ChangeDate],[Price] from [RoomPriceAdjust] where [ChangeDate]>=@date
抱歉 一時看錯,where條件應該沒問題,有問題的是輸出格式
Dapper.DefaultTypeMap.MatchNamesWithUnderscores = true;
雖然是 MySQL 的版本
不過試試也無妨