草庐IT

c# - GUID 是否及时订购?如果 ORDER BY 与 GUID 变量类型一起使用,最近创建的记录是否会延迟?

GUID是否及时订购?我的意思是,如果您将ORDERBY与GUID变量类型一起使用,最近创建的记录会延迟吗? 最佳答案 在Windows上,GUID(UUID)是使用UuidCreate从加密随机数生成器创建的。根据RFC4122,它们是版本4UUID。不涉及时间戳或以太网卡,除非您使用的是使用UuidCreateSequential创建的旧学校版本1GUID。另见HowRandomisSystem.Guid.NewGuid()?(Taketwo)来源:https://stackoverflow.com/a/3011149/1714

c# - 将 System.Decimal 转换为 System.Guid

我有一个很大的字典,其中的键是十进制,但是System.Decimal的GetHashCode()非常糟糕。为了证明我的猜测,我运行了一个包含100.000个相邻小数的for循环并检查了分布。100.000个不同的十进制数字仅使用2(两个!!!)不同的哈希码。十进制表示为16个字节。就像Guid一样!但是Guid的GetHashCode()分布非常好。如何尽可能便宜地将小数转换为C#中的Guid?不安全的代码是可以的!编辑:请求测试,所以这里是代码:decimald=96000000000000000000m;Dictionaryhashcount=newDictionary();in

c# - 将字符串拆分为 GUID 数组

如果我有一个竖线分隔的列表,我可以将它们自动拆分成一个GUID数组吗?所以“guid1|guid2”然后Guid[]values=selectedValue.Split("|".ToCharArray());会很好。 最佳答案 几乎:Guid[]values=selectedValue.Split('|').Select(s=>Guid.Parse(s)).ToArray();如果任何Guid无效,这将抛出FormatException。如果你想忽略它们,你可以按照Jeremy在评论中的建议去做:"9FE027E0-CF95-492

c# - Guid.NewGuid() 返回重复项?

我们有一个应用程序可以为我们的一项服务生成模拟数据以用于测试目的。每个数据项都有一个唯一的Guid。然而,当我们在对模拟器进行一些小的代码更改后运行测试时,它生成的所有对象都具有相同的Guid。创建了一个数据对象,然后是一个for循环,其中修改了对象的属性,包括一个新的唯一Guid,并通过远程处理将其发送到服务(可序列化,而不是按引用编码,如果这就是你的想法),循环并再次执行,等等。如果我们在循环中放置一个小的Thread.Sleep(...),它会生成唯一的ID。我认为这是一个转移注意力的问题。我创建了一个测试应用程序,它只是一个接一个地创建了一个guid,但没有得到一个副本。我的理

c# - 如何将字符串列表转换为 guid 列表

我有以下创建字符串列表的代码行。ListtstIdss=model.Ids.Where(x=>x.Contains(entityId)).Select(x=>x.Split('_').First()).ToList();我需要将其转换为Guid列表。即ListPermissionIds.model.PermissionIds=Array.ConvertAll(tstIdss,x=>Guid.Parse(x));我尝试了上面的方法,但出现了以下错误。model.PermissionIds在我的模型类中实现如下。publicListPermissionIds{get;set;}错误3>>T

c# - Code Contracts 是否未能发现 Nullable<T>.HasValue 和 null 之间的明显关系?

我正在尝试将代码契约应用到我的代码中,但我遇到了一个令人费解的问题。这段代码不符合契约(Contract),但除非我真的很厚,否则我希望它能够轻松分析id在返回时必须有一个值if(id==null)thrownewInvalidOperationException(string.Format("{0}'{1}'doesnotyethaveanidentity",typeof(T).Name,entity));returnid.Value; 最佳答案 我已经弄清了这个行为的真相,这不是CodeContract的错。我在ILSpy中打开

c# - LINQ to SQL 实体列名称属性被 guid 主键忽略

我当时使用LINQtoSQL(SQLServer2005SP3x64)处理一个简单的实体类。[Table(Name="TBL_REGISTRATION")]publicsealedclassRegistration:IDataErrorInfo{[Column(Name="TBL_REGISTRATION_PK",IsPrimaryKey=true,IsDbGenerated=true,AutoSync=AutoSync.OnInsert)]publicGuidRegistrationID{get;privateset;}/*otherpropertiesommitedforbrevi

c# - 我应该使用 Path.GetRandomFileName 还是使用 Guid?

我需要生成唯一的文件夹名称,我应该使用Path.GetRandomFileName吗?或者只使用Guid.NewGuid?Guids说它们是全局唯一的,GetRandomFileName并没有这样的说法。 最佳答案 我认为两者都是随机的,不同之处在于Path.GetRandomFileName将生成一个8.3文件名(总共11个字符),因此与由Guid.NewGuid. 关于c#-我应该使用Path.GetRandomFileName还是使用Guid?,我们在StackOverflow上找

c# - MS Access - C# - 检索最新插入的 guid

有没有办法用C#检索最新插入的guid?我试过这个:创建了一个表Cars,其字段ID类型为自动编号、replicationID和字段名称varchar(250)。varcommand=myConnection.CreateCommand();command.Connection.Open();command.CommandText="INSERTINTOCars(Name)VALUES('Pagani')";command.ExecuteNonQuery();command=context.Database.Connection.CreateCommand();command.Comm

c# - 包含 guid 的结构上的 Marshal.SizeOf 提供额外的字节

我有几个具有顺序布局的结构:structS1{Guidid;}structS2{Guidid;shorts;}structS3{Guidid;shorts;shortt;}在上述结构类型上调用Marshal.SizeOf,我得到了:Size:S1=16,asexpected.S2=20,copiedaninstancetoabytearray,itonlyoccupiesfirst18bytes.S3=20.我的问题是,为什么S2的大小是20而不是18。只有当Guid在结构中时才会出现这个问题。很抱歉无法从msdn中找到任何有用的信息。我知道Marshal.SizeOf给出了该类型在内