草庐IT

swift - OptionSetType 和枚举

全部标签

c# - 数据绑定(bind) Int 属性到 WPF 中的枚举

下面是我拥有的一个类的简化示例:publicclassExampleClassDto{publicintDriverTypeId}我还有一个枚举,将DriverType的ID映射到有意义的名称:publicenumDriverType{None,Driver1,Driver2,Driver3}但我想在XAML中将其绑定(bind)到组合框。不幸的是,由于类型不匹配,它不喜欢这样。所以在我的ViewModel中,我必须创建第二个属性来映射这两个publicclassExampleViewModel{privateExampleClassDto_selectedExampleClass;p

c# - 在 SQL Server 中反汇编位标志枚举

我在SQLServer数据库中有一个INT列,它存储与位标志枚举相关的值。例如,如果枚举是:[Flags()]publicenumUserType{StandardUser=1,Admin=2,SuperUser=4}那么SQLServer中的列可能包含值5。我需要做的是从另一个表中选择包含有关UserType的额外详细信息的所有行,因此使用值5的示例,我想从ID为1和4的第二个表。有谁知道以这种方式分解数字的巧妙方法-理想情况下,该方法应该在某种程度上递归,因为这是一个非常简化的示例,并且实际的表/枚举要大得多。 最佳答案 获取设

C# 如何在类中使用 get、set 和使用枚举

我有一个使用类存储设置的程序。我需要它来使用设置和获取功能来更改和存储设置。我试过这个,但我没有让它工作。谁能帮我解决这个问题?privateenum_Difficulty{Easy,Normal,Hard};publicvoidSetDifficulty(Difficulty){_Difficulty=Difficulty;}publicenumGetDifficulty(){return_Difficulty;}有没有办法在具有get和set的类中使用枚举?我还需要使用bool和int。 最佳答案 这里有几处错误:您的枚举是私有

c# - 在 switch 语句中针对枚举进行编程,这是您的方式吗?

看代码片段:这是我在针对枚举进行编码时通常会做的事情。我有一个带有InvalidOperationException的默认转义(我不使用ArgumentException或其衍生物之一,因为编码是针对私有(private)实例字段而不是传入参数)。我想知道你们这些开发人员是否也在考虑这种转义......publicenumDrivingState{Neutral,Drive,Parking,Reverse};publicclassMyHelper{privateDrivingStatedrivingState=DrivingState.Neutral;publicvoidRun(){s

c# - 结合枚举值和位标志

我有这样的场景,用户有自己的角色NormalUserCustodianFinanceCustodian和Finance都是SuperUser我如何检查角色保管人是否是super用户这是我的示例代码..usingSystem;usingSystem.Collections.Generic;usingSystem.Linq;usingSystem.Text;namespaceConsoleApplication3{publicenumRole{NormalUser=0,Custodian=1,Finance=2,SuperUser=Custodian|Finance,All=Custodi

c# - 为什么 async 关键字在编译时会生成一个枚举器和附加结构?

如果我创建一个像下面这样的简单类:publicclassTestClass{publicTaskTestMethod(intsomeParameter){returnTask.FromResult(someParameter);}publicasyncTaskTestMethod(boolsomeParameter){awaitTask.FromResult(someParameter);}}并在NDepend中检查它,它表明TestMethod采取行动并成为asyncTask有一个为它生成的结构,带有一个枚举器、枚举器状态机和一些额外的东西。为什么编译器会生成一个名为TestClas

c# - Collection<T> 是封装 IList<T> 还是枚举 IList<T>?

如果我通过Collection属性公开内部成员:publicCollectionEntries{get{returnnewCollection(this.fieldImplimentingIList);}}当这个属性被调用时会发生什么?例如,调用以下代码行时会发生什么:Ttest=instanceOfAbove.Entries[i];instanceOfAbove[i]=valueOfTypeT;很明显,每次调用此属性时都会创建一个新的引用类型,但实际发生了什么?它只是包装IList吗?在下面,它是否枚举了IList并创建一个新的Collection实例?如果在for中使用此属性,我会

c# - 契约前置条件引起的IEnumerable多重枚举

我有一个IEnumerable参数,该参数必须是非空的。如果有像下面这样的先决条件,那么集合将在它期间被枚举。但是下次我引用它时它会再次被枚举,从而导致在Resharper中出现“PossiblemultipleenumerationofIEnumerable”的警告。voidProcessOrders(IEnumerableorderIds){Contract.Requires((orderIds!=null)&&orderIds.Any());//enumeratesthecollection//BAD:collectionenumeratedagainforeach(variin

c# - 在 C# 中限制访问枚举参数的最佳实践

关闭。这个问题是opinion-based.它目前不接受答案。想要改进这个问题?更新问题,以便editingthispost可以用事实和引用来回答它.关闭9年前。Improvethisquestion考虑这个问题String.Splitoverload,它需要一个StringSplitOptions枚举作为参数。枚举本身是公开的并且可供包括System命名空间的所有内容访问,这不是很糟糕吗?我的意思是,枚举完全特定于Split方法的选项,但它在其范围之外可用。也许有更好的方法来对此进行建模,例如将枚举放在String类本身中,然后使用String.SplitOptions访问它?我很少

c# - 外键列可以首先是 Entity Framework 6 代码中的枚举吗?

我首先将EF5DB转换为EF6代码。在旧设置中,有一些FK是字节。并且在应用程序中被映射到带有下划线字节类型的枚举。这一直很有效。首先转到代码和EF6,我发现声称枚举应该“正常工作”,而且对于常规列来说确实如此。我可以从这里开始publicbyteFavPersonality{get;set;}为此:publicPersonalityFavPersonality{get;set;}但是当涉及到也是外键的列时,我得到这个错误:System.ArgumentException:TheResultTypeofthespecifiedexpressionisnotcompatiblewitht