草庐IT

key_type

全部标签

c# - IList<Type> 到 IList<BaseType>

我有几个类:classVehicle{}classCar:Vehicle{}我有一个派生类的列表:IListcars;我想将列表转换为其基类,并尝试过:IListbaseList=carsasIList;但我总是得到null.还有carsisIListevaluatestobefalse.当然,如果我执行以下操作,我可以将项目添加到列表中:Listtest=newList();foreach(Carcarincars){test.Add(car);}我得到了我的list,但我知道必须有更好的方法。有什么想法吗? 最佳答案 使用IEn

c# - VS 如何编译控制台应用程序以显示 "Press any key to continue"?

当我开发C#控制台应用程序(将在服务器上运行)并使用VisualStudio运行它时,我在程序终止前收到“按任意键继续”消息。但是,当我使用CSC手动编译完全相同的C#代码文件时,我的程序没有显示该消息并且它在完成其逻辑后立即终止。有谁知道我如何在不使用VS且不更改C#代码或添加ReadLine()的情况下编译代码时实现相同的功能?更新:我学习C#时曾出现过相同的消息,我曾经将TextPad与CSC一起使用,并且该消息过去常常在不添加任何Write(Line)/Read(Line)调用的情况下出现 最佳答案 这与编译器无关-如果您按

c# - "Predefined type ' System.* ' is not defined or imported"错误,visual studio 代码,omnisharp

我在几个.net核心应用程序中遇到上述错误的问题。我正在使用vscode版本1.18.0,但错误已经开始出现在以前的版本中。错误出现在每个.cs文件中的每种数据类型(如字符串、整数、void等)以及类导入。所有项目仍然可以正常编译和运行。同样在另一个工作站上,我没有在同一个项目中遇到问题,所以它似乎是本地omnisharp/vscode或windows?问题。有没有人遇到过类似的问题并设法修复它或对我可以尝试的方法有任何建议?我已经重新安装了vscode和omnisharp,但我仍然遇到问题。示例错误:未定义或导入预定义类型“System.Object”[GG]

c# - 如何保证 Array 中 "reference type"项目的更新对其他线程可见?

privateInstrumentInfo[]instrumentInfos=newInstrumentInfo[Constants.MAX_INSTRUMENTS_NUMBER_IN_SYSTEM];publicvoidSetInstrumentInfo(Instrumentinstrument,InstrumentInfoinfo){if(instrument==null||info==null){return;}instrumentInfos[instrument.Id]=info;//needtomakeitvisibletootherthreads!}publicInstru

c# - 在 C# 中保护加密 key

我了解.NET框架中提供的许多加密提供程序以及如何使用它们的基础知识。这很简单。但我担心的是这个。假设我想使用这些库来加密XML序列化对象,以防止篡改和任何人查看这些文件内容的能力。我经常遇到的问题是解密此数据的key需要作为常量存储在我的应用程序中的某处。基本上使整个练习变得毫无意义。那么,如何在可反汇编的应用程序中安全地存储加密算法的key?编辑:所以如果我正确理解下面的两个答案。这意味着基本上任何实现(为了安全)都要求它是只读的或只写的,但不能两者兼而有之?这是正确的吗? 最佳答案 你不知道。如果应用程序可以访问key,那么它

c# - 分布式 key 生成是否有 GUID 替代方案?

我的情况是:我有许多客户端应用程序,它们使用本地数据库(MSSQL、MSAccess-抱歉,这是企业系统,我必须支持旧版...)我对客户的趋势一无所知-现在大约是10,但可能一年约100个。这些表中的数据到达我的中央服务器并放入一个公用表中有时现有(客户端)数据会更改-我必须执行更新/删除操作我不想使用GUID(.NET类型System.Guid)-很难简单地在MSAccess上实现和支持。此外,它是notgoodforperformance我需要对该公用表进行快速搜索,因此最好使用int或longint作为PK所以,我想要:避免碰撞的独特之处(它将用作PK)它应该是int或longi

c# - Code First 迁移种子错误 : The binary operator Equal is not defined for the types 'System.Nullable` 1[System. Int32 ]' and ' System.Int32'

在我的数据库中播种时,我的更新标识符出现以下问题:context.ClientPromos.AddOrUpdate(cp=>new{cp.ClientID,cp.Recommendation_ID,cp.PromoCode_ID},newClientPromo{ClientID=0,Recommendation_ID=Rec30Off.RecommendationID,PromoCode_ID=pc30PerOffProd.PromoCodeID},newClientPromo{ClientID=0,Recommendation_ID=RecKnow.RecommendationID,

c# - 使用 Amazon Web Services 保密 key

我正在尝试在我的个人项目中使用亚马逊网络服务。我已经获取了他们的AWSSDKfor.NET并正在使用它,但我有点困惑。通过私钥/公钥对访问Web服务(在本例中为SimpleDB,但我认为这对问题来说并不重要)。用于创建客户端对象的适用于.NETAPI的AWS开发工具包需要私钥:AWSClientFactory.CreateAmazonSimpleDBClient(publicKey,privateKey);这是一个客户端应用程序,因此代码将完全在客户端上运行。建议客户端需要访问我的私钥才能访问SimpleDB。但是亚马逊一再强调,我的私钥绝不能脱离我的控制。这对我来说没有意义,所以我想

c# - Mono.Cecil type.IsAssignableFrom(derivedType) 等效项

我正在使用Mono.Cecil在Assembly中查找派生自给定的类型。通常可以使用IsAssignableFrom()方法来完成,但我无法确定它在Cecil中是等效的。有没有这样的方法或其他方法来检查它?谢谢迈克 最佳答案 继承检查和“赋值兼容性”检查实际上是不同的东西。您要检查继承还是“分配兼容性”?赋值兼容性包括很多东西,包括有符号/无符号转换、枚举到基类型的转换、char至short转换、通用方差转换、从接口(interface)到object的转换,从数组到IList和IList以及它们的基本接口(interface)、数

c# - 为什么我可以通过索引访问 KeyCollection/ValueCollection 中的项目,即使它没有实现 IList(Of Key)?

我注意到一个奇怪的VB.NET东西。来自thisquestion我提供了一种访问字典的键和值的方法'KeysCollection和ValuesCollection通过索引获取第一项。我知道它只在SortedDictionary中才有意义因为正常Dictionaryisnotordered(好吧,你不应该依赖它的顺序)。这是一个简单的例子:DimsortedDictAsNewSortedDictionary(OfDateTime,String)sortedDict.Add(DateTime.Now,"Foo")DimkeysAsSortedDictionary(OfDateTime,St