草庐IT

bad_cast

全部标签

ios - 使用 Set 时,Swift 2.0 : Could not cast value MyApp. MyCustomClass 到 MyAppTests.MyCustomClass

这是一个错误:CouldnotcastvalueoftypeMyApp.Member(0x1674daf8)toMyAppTests.Member(0x4c07248).您可以通过简单的方式重现错误:设置两个NSManagedObject@objc(Member)classMember:NSManagedObject{@NSManagedvarfamily:Family}@objc(Family)classFamily:NSManagedObject{@NSManagedvarmembers:Set}也在您的.xcdatamodel中进行设置:然后在您的测试文件中:functestA(

swift - 核心数据 : Could not cast value of type 'MyType_MyType_2' to MyType

我有一个Objective-C模型类MyType。此类在Swift代码中使用:NSEntityDescription.insertNewObjectForEntityForName("MyType",inManagedObjectContext:context)as!MyTypeas!转换导致错误消息CoreData:Couldnotcastvalueoftype'MyType_MyType_2'(0x7be99a30)toMyType(0xf33db74).如果我将它转换为NSManagedObject它会起作用。当我打印结果时,我仍然可以看到,它是MyType的实际实例:(enti

ios - 错误 "Thread 1:EXC_BAD_INSTRUCTION (code=EXC_I386_INVOP, subcode=0x0)"是什么意思?

我遇到了这个错误:Thread1:EXC_BAD_INSTRUCTION(code=EXC_I386_INVOP,subcode=0x0)我该如何解决这个问题?代码运行正常,但在计算器中,当我单击唯一的等于按钮时,它给出了该错误。@IBActionfuncequals(sender:AnyObject){secondNumber=Screen.text!.toInt()!//hereitshowsanerrorwhichis"Thread1:EXC_BAD_INSTRUCTION(code=EXC_I386_INVOP,subcode=0x0)"ifoperation=="+"{res

c# - Entity Framework 4.1 : Unable to cast from DbQuery to ObjectQuery

我有以下代码:publicvoidDeleteAccountsForMonth(intyear,intmonth){varresult=fromacminthis._database.AccountsOnMonthwhere((acm.Year==year)&&(acm.Month==month))selectacm.Id;varquery=(ObjectQuery)result;stringsql=string.Format("DELETEFROM[AccountsOnMonth]WHERE[AccountsOnMonth].[Id]IN({0})",query.ToTraceStr

c# - 从 OracleDataAdapter.Fill() 填充 DataTable 时为 "Specified cast is not valid"

我似乎无法在Google(或StackOverflow)的任何地方找到这个问题,这真的让我感到惊讶,所以我把它放在这里以帮助处于相同情况的其他人。我有一个在OracleSqlDeveloper上运行良好的SQL查询,但是当我使用adapter.Fill(table)通过C#运行它以获取结果时,我得到Specifiedcastisnotvalid错误(System.InvalidCastException)。这是C#代码的精简版:varresultsTable=newDataTable();using(varadapter=newOracleDataAdapter(cmd)){varro

c# - 条件运算符? : with Nullable type Casting

在MSDN文档中,以下两个片段是相同的:boolvalue;intx=(value)?0:1;和boolvalue;intx;if(value)x=0;elsex=1;太棒了,太棒了。我用它所有的时间。简洁有效。如果我们尝试使用可空类型,如下所示:int?x=(value.HasValue)?value.Value:null;我们得到一个编译时错误:Thetypeofconditionalexpressioncannotbedeterminedbecausethereisnoimplicitconversionbetween'{NullableType}'andnull.这编译得很好:

c# - "Base abstract generic class is a bad choice in most situations."为什么? (或者为什么不)

我刚刚看到关于blog的评论帖子:Baseabstractgenericclassisabadchoiceinmostsituations这是真的吗?如果不是,为什么?得出此声明的见解是什么? 最佳答案 我同意,因为任何继承抽象泛型类的东西都不会与基类多态。也就是说,如果你有abstractclassmyBase然后你创建classmyThing:myBaseclassmyOtherThing:myBase您不能创建针对myThing和myOtherThing的方法,因为它们不共享祖先。基类是抽象的没有意义,真的,它还不如只是一个类

c# - 无法转换类型 : why is it necesssary to cast twice?

鉴于这个高度简化的例子:abstractclassAnimal{}classDog:Animal{publicvoidBark(){}}classCat:Animal{publicvoidMew(){}}classSoundRecorderwhereT:Animal{privatereadonlyT_animal;publicSoundRecorder(Tanimal){_animal=animal;}publicvoidRecordSound(stringfact){if(this._animalisDog){((Dog)this._animal).Bark();//Compiler

c# - .NET : Unable to cast object to interface it implements

我有一个类(TabControlH60),它既继承自基类(UserControl)又实现了一个接口(interface)(IFrameworkClient)。我使用.NETActivator类实例化该对象。使用返回的实例,我可以转换为UserControl基类,但不能转换为接口(interface)。我得到的异常在代码片段下方。如何转换到界面?objectobj=Activator.CreateInstance(objType);Type[]interfaces=obj.GetType().GetInterfaces();//containsIFrameworkClientm_Clie

C# : So if a static class is bad practice for storing global state info, 提供相同便利的好的替代方案是什么?

我一直注意到静态类在用于存储全局信息方面在SO上得到了很多不好的评价。(并且全局变量通常受到蔑视)我只想知道下面的示例有什么好的选择......我正在开发一个WPF应用程序,从我的数据库中检索到的数据的许多View都是根据当前登录用户的ID过滤的。同样,我的应用程序中的某些点应该只供被视为“管理员”的用户访问。我目前正在静态类中存储一个loggedInUserId和一个isAdminbool值。我的应用程序的各个部分都需要此信息,我想知道为什么它在这种情况下并不理想,以及替代方案是什么。启动和运行似乎非常方便。我唯一能想到的替代方法是使用IoC容器将Singleton实例注入(inje