这是我的aspx代码:
<div class="box-body">
<asp:GridView ID="gvSms" runat="server" CssClass="table table-bordered table-striped">
</asp:GridView>
</div>
这是我的cs代码:
if(!Page.IsPostBack)
{
Master.pageHeaderTitle = "Employee Sms";
DataTable dt = new DataTable();
dt.Columns.Add("Employee Code");
dt.Columns.Add("Employee Name");
dt.Columns.Add("Mobile No");
dt.Columns.Add("Message");
dt.Columns.Add("Creating Date");
var db = new HRContext();
var data=db.EmployeeSms.Where(d => d.HasRead == false).OrderByDescending(d => d.Id).ToList();
if(data!=null)
{
foreach(var item in data)
{
string mobile = item.EmployeeMobile.TrimStart('8').TrimStart('8');
var emp = db.Employee.Where(d => d.OfficePhone == mobile).FirstOrDefault();
string code = "";
string name = "";
if(emp!=null)
{
code = emp.eployeId;
name = emp.firstName + " " + emp.lastName;
}
dt.Rows.Add(code,name,item.EmployeeMobile,item.SMS,item.CreatedAt);
}
}
gvSms.DataSource = dt;
gvSms.DataBind();
}
由于一行中有长消息,因此未显示使用此代码创建日期列。如果消息列发表评论,则显示。那我该怎么办呢?它使消息列多行或使gridview可滚动。我试过但不能。 任何形式的帮助都是值得的,并提前感谢。
答案 0 :(得分:0)
首先,您应该在数据库中将Date列的数据类型设置为DateTime
或varchar
,然后使用:
string date = DateTime.Now.ToString("d/MM/yyyy");
dt.Rows.Add(code,name,item.EmployeeMobile,item.SMS,date);