DropDownList
将字符串转换为 guid 时出现此错误。
堆栈跟踪:在 System.Guid.TryParseGuid(String g, GuidStyles flags, GuidResult& result) 在 System.Guid..ctor 的 System.Guid.GuidResult.SetFailure(ParseFailureKind failure, String failureMessageID, Object failureMessageFormatArgument, String failureArgumentName, Exception innerException) (String g) at Projects_AddProject.wizCreateProject_ActiveStepChanged(Object sender, EventArgs e) at System.Web.UI.WebControls.Wizard.OnActiveStepChanged(Object source, EventArgs e) at System.Web.UI.WebControls.Wizard.MultiViewActiveViewChanged(Object source, EventArgs e) 在 System.Web.UI.WebControls.MultiView.OnActiveViewChanged(EventArgs e) 在 System.Web.UI.WebControls.MultiView.set_ActiveViewIndex(Int32 值) 在 System.Web.UI.WebControls.Wizard.set_ActiveStepIndex(Int32 值) 在 Projects_AddProject.proxy_Navigate(对象发件人,HistoryEventArgs e) 在 System.Web.UI.ScriptManager.RaiseNavigate(HistoryEventArgs e) 在 System.Web.UI.ScriptManager.LoadHistoryState(String serverState) 在 System.Web.UI.ScriptManager.RaisePostBackEvent(String eventArgument) 在 System.Web。 UI.ScriptManager.System.Web.UI.IPostBackEventHandler.RaisePostBackEvent(字符串事件参数)
该方法是wizCreateProject_ActiveStepChanged。只是我需要知道如何解决这个转换。
这是我们得到错误的方法:
protected void wizCreateProject_ActiveStepChanged(object sender, EventArgs e)
{
switch (wizCreateProject.ActiveStepIndex)
{
case 0:
if (rbFrmTemp.Checked)
{
int tenantID = TenantUtils.getTenantId(Page);
EzProject templateProject = DBAccessProjects.GetProject(tenantID, new Guid(ddlProjTemplates.SelectedValue));
default:
break;
}
}
我在这一行得到错误:
EzProject templateProject = DBAccessProjects.GetProject(tenantID, new Guid(ddlProjTemplates.SelectedValue));
我检查了 ddlProjectTemplates 有这种类型的值
<option value="7590aab2-29b9-4262-9982-4403ca7b52f2">Managed Services Agreement</option>
这是正确的 Guid 格式吗?我该如何解决这个问题?