// EmployeeService:
[WebMethod]
public List<Employee> GetEmployees()
{
return
(
from p in db.Persons
where p.Type == 'E'
select new Employee
{
Name = p.FullName,
//HireDate = p.CreationDate.ToString(),
// works, but not in the format I need
//HireDate = p.CreationDate.ToString("s"),
// throws a NotSupportedException
//HireDate = Wrapper(p.CreationDate),
// works, but makes me worry about performance
// and feel dead inside
}
).ToList<Employee>();
}
private String Wrapper(DateTime date)
{
return date.ToString("s");
}
// Elsewhere:
public class Employee
{
public String Name;
public String HireDate;
}
我正在使用需要ISO 8601样式格式的日期的JavaScript框架,这正是在DateTime对象上调用.ToString(“s”)将返回的日期.
在LINQ to SQL中有更清晰/更有效的方法吗?
最佳答案 我相信Wrapper技巧和你在这种情况下可以得到的一样好.抱歉.
更新:似乎这里再次被问到:Linq to Sql – DateTime Format – YYYY-MMM (2009-Mar).答案也非常“抱歉”;考虑到谁参与了那个问题,我现在确信你不能做得更好.