是否 safe/feasible 将 uniqueidentifier 视为字符串而不是 System.Guid 以进行比较?

Is it safe/feasible to treat uniqueidentifier as string rather than System.Guid for comparison purposes?

使用数据库中的 uniqueidentifier 时。大多数时候我只需要它用于 LINQ 查询中的比较目的,以及作为 HyperLinkNavigateUrl 和类似情况的值。那么,为了比较目的,是否 safe/feasible 将 uniqueidentifier 视为字符串而不是 System.Guid

是的,但它需要比比较 Guid 更仔细的编码。

使用 Guid 进行比较的代码更容易正确,因为在该形式中只有一种表示唯一 Guid 值的形式。

字符串表示形式更加灵活(即大小写、破折号),因此您可能需要先规范化值(即小写并删除所有非字母数字字符),或者使用自定义比较器(即只比较的比较器)字母数字字符并忽略大小写)。