草庐IT

developers_guide

全部标签

c# - 在 Visual Studio Enterprise 2017 中缺少创建 GUID?

WherecanIfindCreateGUIDoptionsinVisualStudio2017?我使用的是VisualStudioEnterprise2017版,但我没有从“工具”菜单中找到“创建GUID”选项。 最佳答案 请按照本文档中的故障排除部分进行操作。https://social.technet.microsoft.com/wiki/contents/articles/33047.create-guid-tool-in-visual-studio.aspxIfthetooldoesnotappearundertheToo

c# - 在 .NET 中创建加密安全随机 GUID

我想在.NET中创建加密安全GUID(v4)。.NET的Guid.NewGuid()函数不是加密安全的,但.NET确实提供了System.Security.Cryptography.RNGCryptoServiceProvider类。我希望能够将随机数函数作为委托(delegate)传递给Guid.NewGuid(或者甚至传递一些提供生成器接口(interface)的类),但它看起来不像那样默认实现是可能的。我可以通过同时使用System.GUID和System.Security.Cryptography.RNGCryptoServiceProvider创建加密安全的GUID吗?

c# - Windows 8 Developer Preview 中缺少 Type.GetProperty() 方法

我正在尝试将一个简单的应用程序移植到Windows8Metro(WinRT)。好像少了一些很基础的方法。一个基本示例:Type.GetProperty()。它适用于WindowsPhone7、Silverlight和.NET客户端配置文件。我是否必须安装某些东西(例如,一个特殊的库)或者这种方法在.NETmetro配置文件中根本不可用?更新好的,谢谢。现在我使用this.GetType().GetTypeInfo().DeclaredProperties。usingSystem.Reflection;需要此GetTypeInfo()扩展方法。 最佳答案

c# - VS 项目引用因 GUID 区分大小写而损坏

自从升级到VS2015后,我的团队遇到了一些奇怪的事情,我相信现在Microsoft正在解决这些问题。一个非常烦人的问题是我们似乎丢失了项目引用,尤其是在分支之后。我昨天开始处理我们解决方案的一个新分支,结果发现类型无法识别,并且命名空间使用被认为是不必要的(因为它们是针对突然变得无法识别的类型)。项目中的引用没有显示任何图标表明引用有问题,但为了看看它是否有效,我删除并重新添加了一个项目引用,这导致它的类型再次被识别。当然,这更新了项目文件,所以我查看进行了哪些更改。无法检测到引用的项目与现在可以检测到的项目之间的唯一区别是GUID中的字母字符已从小写更改为大写。例如:旧的、损坏的引

c# - Guid.NewGuid() VS 来自 Random.Next() 的随机字符串生成器

我和我的同事正在讨论使用这些方法中的哪一种来自动生成用户ID和帖子ID以在数据库中进行识别:一个选项使用Random的单个实例,并采用一些有用的参数,因此它可以重复用于各种字符串生成情况(即从4位数字引脚到20位字母数字ID)。这是代码://ThisiscreatedonceforthelifetimeoftheserverinstanceclassRandomStringGenerator{publicconststringALPHANUMERIC_CAPS="ABCDEFGHIJKLMNOPQRSTUVWXYZ1234567890";publicconststringALPHA_C

c# - NewGuid 与 System.Guid.NewGuid().ToString ("D");

使用NewGuid();与System.Guid.NewGuid().ToString("D");生成GUID时有区别吗?或者它们是一样的吗? 最佳答案 我意识到这个问题已经有了一个可接受的答案,但我认为分享一些关于格式化guid的信息会很有用。ToString()(noparameters)method使用此格式格式化guid:xxxxxxxx-xxxx-xxxx-xxxx-xxxxxxxxxxxxToString(stringformat)method以多种方式之一格式化guid:"N"-xxxxxxxxxxxxxxxxxxxx

c# - Guid & GetHashCode 唯一性

给定以下key:intkey=Guid.NewGuid().GetHashCode();这个key是否像Guid的唯一性一样唯一? 最佳答案 pigeonholeprinciple说不。GUID有16个字节的信息-128位。int有32位信息。(编辑:为了澄清评论,据我所知,.NETGUID将允许任意设置这128位;随机生成的GUID遵循更严格的模式,因此没有2128随机生成的不同值。不过仍然超过232。)有2128种可能的GUID和232种可能的哈希码-所以你不能可能有不同的哈希码每个GUID。不过还有更多-GetHashCode

c# - Entity Framework 自动生成 GUID

我是EF的新手,所以开始吧。我有一个包含以下内容的类publicclassEmailTemplate{publicGuidId{get;set;}[MaxLength(2000)]publicstringHtml{get;set;}}这是我的映射类classEmailMapper:EntityTypeConfiguration{publicEmailMapper(){ToTable("EmailTemplate");HasKey(c=>c.Id);Property(c=>c.Id).HasDatabaseGeneratedOption(DatabaseGeneratedOption.I

c# - 从 Oracle 的 RAW(16) 转换为 .NET 的 GUID

我在手动调试Guid值从.NET到Oracle不同的.NET应用程序时遇到困难。其中C#读取:17D89D326C2142D69B989F5201288DBFOracle读取:329DD817216CD6429B989F5201288DBF我如何能够手动调试,即从C#的GUID能够将该值粘贴到oracle查询中并获得正确的结果(反之亦然)? 最佳答案 如果您查看十六进制数字所涉及的值(成对),您会发现最后7个字节在这两种情况下是相同的,但前9个字节稍微调换了一下。根据您的示例,将.NET中的每一对重写为00、11、22等,并切换Or

c# - 使用 ComVisible(false) 时指定 Guid 有什么意义吗?

当您在VisualStudio中创建新的C#项目时,生成的AssemblyInfo.cs文件包含一个指定程序集GUID的属性。属性上方的注释指出“如果此项目向COM公开”则使用它。我的程序集都不包含需要对COM可见的类型,因此我用[assembly:ComVisible(false)]标记了我的程序集。那么指定GUID有什么意义吗?我的感觉是答案是否定的——那么为什么默认的AssemblyInfo.cs文件同时包含[assembly:ComVisible(false)]和[assembly:Guid("...")]?编辑:总结响应:在它们之间,答案解释了当且仅当使用COM互操作时才需要