如何检查传入的无效guid参数

Mas*_*yah 4 c# guid

我正在尝试创建一些测试数据,并且我想向用户返回错误消息,传入的guid不是有效的格式 - 如何应用它的一个示例将是很好的

我正在使用的适当guid格式:

Guid user = new Guid("FF2214F8-5393-4B5A-B1CA-3620F85D9131");
Run Code Online (Sandbox Code Playgroud)

我传入测试的无效guid,并希望向用户返回一条消息,通知而不是破坏:

Guid user2 = new Guid("UserName");
Run Code Online (Sandbox Code Playgroud)

我用来传入的方法:

public void UserName(user2)
{
....  
}
Run Code Online (Sandbox Code Playgroud)

jor*_*hmv 11

如果我理解正确的user2是您要测试的Guid,那么请尝试Guid.TryParse:

   Guid result;
    if(Guid.TryParse(user2, out result))
    {
    //success (result variable has been assigned the Guid value)
    }
    else
    {
    //error
    }
Run Code Online (Sandbox Code Playgroud)

编辑:根据您的意见,我知道问题是您传递的方法是无效的Guid,因此当您创建要作为参数传递给方法的变量时会发生异常.这有帮助吗?

Guid user2; 
if(Guid.TryParse("UserName", out user2))
{
 UserName(user2)
}
else
{
//do whatever you need to report the error
}
Run Code Online (Sandbox Code Playgroud)

我不知道你在哪里获得"UserName",但这里的重点是,无论你在哪里尝试Guid从字符串创建一个字符串并且你不确定该字符串是否有效你需要使用Guid.TryParse方法