在此功能中
[HttpGet]
public ActionResult Create_Summary(Guid? appointmentId)
{
if (appointmentId.HasValue)
{
var appointment = _appointmentRepository.GetAppointmentDetails(appointmentId);
var summary = new CreateAppointmentSummary
{
NameOrSubject = appointment.Subject,
Location = appointment.Location,
DescriptionOrRemarks = appointment.Description
};
return View(summary);
}
else
{
var summary = new CreateAppointmentSummary();
return View(summary);
}
}
我在调用存储库函数时遇到错误:Cannot convert System.Guid? to System.Guid
。
我想要做的是使得能够使用一些null guid值以及其他视图调用此操作。 但如果他们使用一些非空的guid值调用,那么调用resposiotry函数进行一些搜索。
但是我很难做到这一点。
答案 0 :(得分:3)
Brandon说 - 当你调用存储库函数时需要这个。
var appointment = _appointmentRepository.GetAppointmentDetails(appointmentId.Value);
Guid?
和Guid
是完全不同的类型; GetAppointmentDetails
需要Guid
。
答案 1 :(得分:0)
请尝试:
(Guid?) new Guid(appointmentId)
刚刚施展它:( Guid?)(新Guid(myString))
还有一个隐式演员,所以这也可以正常工作:Guid? g =新Guid(myString);