Custom Type Cannot Be Cast To Custom Type And Losing Will To Live
Jun 10, 2010
I have been trying to solve a problem related to using RolesProviders in MVC.Basically I would like to an additional set of criteria to the roles table so that a user can switch roles based on what they are doing on the site.However as simple as it may sound its proving to be a nightmare. I cannot for love nor money come up with a solution. I have tried overloading the provider, creating extension methods (which never work with the Roles class) but finally I decided to simply create a reference to my own custom provider and just completely bypass the whole User, Roles class.Now I am getting a ridiculous error which states that I cannot cast MyProvider class to an instance of MyProvider class? All I am doing is calling the Roles.Provider method and casting its return value to my custom provider class (which inherits from RolesProvider). The asp.net forums are a waste of time since no one ever answers the questions and there are simply no examples of extending the Roles/Membership model without using SQL server.
I recently downloaded VB 2010 Express so i am quite new to the language, but i have worked with dark basic, which seems to b very similar.Anyway, my problem is that i cannot seem to correctly set out my array of a custom type/class. i am trying to create two arrays, one of available entities and another of selected entities of which the user selects the entities to be dealt with in irrelevant ways. i have creates a button (called test) which adds some entities to the available list and all the entities come back the same value but they shouldnt be as you'll c in the code. i have run the step into command a found that "available.item(#).Name = " will change all of the entity's names.As of current i am working with lists as the array kept asking for a 'new' statement but i couldnt figure out where to put it.[code]
I have created a Dictionary class (MyDictionary for the example). I am currently trying to pass MyDictionary into a function, filter it into a new instance of MyDictionary and pass this new instance into another method. When I am attempting to create the second instance from the filtered first instance of MyDictionary via Lambda Expressions and the ToDictionary Method, I am getting the following error:
Unable to cast object of type 'System.Collections.Generic.Dictionary`2[System.Int32,System.String]' to type 'MyDictionary'. I have simplified the example and recreated it in LINQPad and am getting the same error.
I am implementing IMAPI2 into my vb.net project but ran into a wall. I am getting the message Unable to cast object of type 'IMAPI2FS.FsiStreamClass' to type 'IMAPI2.IStream' when trying to start the burn. I googled around and found this is something that microsoft hasn't fixed.. which basically renders IMAPI2 useless in vb.net.
I found a post on codeproject.com by eric hadden who combined the IMAPI2.dll and IMAPI2fs.dll into an c# interop file. I also see the IBURN interop in microsoft SDK samples. I'd like to use either, but it's in c# and I'm using vb express. Does anyone know a way to get the interop into visual basic or a way around "Unable to cast object of type 'IMAPI2FS.FsiStreamClass' to type 'IMAPI2.IStream'"?
I'm having a problem with converting from one source type to a destination type. I have a form with 2 buttons (button 2 uses the OpenFileDialog to have the user open an excel file set to NewFile),(button 1 takes the contents from specific cells in NewFile and arranges them how I need into oXLApp1).
The error I get is "Unable to cast object of type 'System.IO.FileStream' to type 'Excel.Application'." in line 14 of the code below.
Public Class Form1 Private Sub Button2_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles Button2.Click
I'm new to VB 2005, the code below is actualy coded from VB 6 and just converted it to VB 2005. I'm having trouble with line that's on bold letters.In VB 6 this works just ok. By the way the error message is "Unable to cast object of type 'System.String' to type 'ADODB.Connection'." [code]
Could anyone assist me in solving my problem ? My code was written in VB (VS 2003.)I got this error: System.InvalidCastException: Cast from type 'DBNull' to type 'Integer' is not valid. in my code.Here is the code line where I am getting the error: LeadCampusID = CInt(.Item("mkCampusID"))I fixed the error by making the changes in the code as :
If Not IsDBNull(.Item("mkCampusID")) Then LeadCampusID = CInt(.Item("mkCampusID")) Else
Unable to cast COM object of type 'System.__ComObject' to class type 'rjsDocMan.Folder'.Instances of types that represent COM components cannot be cast to types that do not represent COM components; however they can be cast to interfaces as long as the underlying COM component supports QueryInterface calls for the IID of the interface.The code where it is flagging the error is:
I saw this thread and I had simple answer in mind. To use custom enumerator class. So I was trying to make one for that guy, which would have one more property to check whether its has reached end or not. It would also provide current position.I'm getting an error "Unable to cast object of type 'SZArrayEnumerator' to type 'WindowsApplication1.myEnumerator'." at the line 6 [see below].However, return type of values.getEnumerator says its IEnumerator. [code]
Columns 0 & 1 are filled from a DataAdapter from Access Database and three are added. I had this working, but I changed it to check for the column "Feed" so I could add several Locations. At first this worked,but I did someething in perfecting it and it now fails after filling the first row of the datagridview (dgvFdMed).I ran a check and the table LotsTab has 8 rows filled. Column 1 & 2 are strings and the database appears they are fine. The added columns have just been created with no value. My plan is to enter the values and then use the data from the grid.
Private Sub sfillGrid(ByVal Loc As String) Dim i As Integer Dim column As DataGridViewColumn
I have 2 Child forms inside a parent. For example, FrmChild1 contains a "Friend Sub" I wish to call.I would like one of the child forms to call that sub from another child form (we will call it FrmChild2. The following code works, but when it's done going through the "For Each", I get a "Invalid Cast"
' THIS CODE IS IN FrmChild1 For Each mFrmChild2 As FrmChild2 In FrmParent.MdiChildren mFrmChild2.GuestRefresh(False) Next
Error after calls are made:"Unable to cast object of type FrmChild1 to type FrmChild2.
I have a series of API calls that are returning J# data types. I have been able to convert most of the data types (Integer, Boolean, Double, Float, etc) just fine.What I need to do now is convert a java.Util.Collection to a VB .NET collection (ArrayList)
Here is my attempt:
Public Function MakeDotNETCollection(ByVal javaCol As java.util.Collection) As Collection Dim dotNetCol As Collection
[code]....
I keep getting a runtime error "Unable to cast object of type 'AbstractListlistIterator' to type 'System.Collections.IEnumerator.
I am building a software which will be used to create a remote desktop connection. However I'm getting this error:
Unable to cast COM object of type 'System.__ComObject' to interface type 'MSTSCLib.IMsTscNonScriptable'. This operation failed because the QueryInterface call on the COM component for the interface with IID '{C1E6743A-41C1-4A74-832A-0DD06C1C7A0E}' failed due to the following error: Δεν υποστηρίζεται τέτοια διασύνδεση (Exception from HRESULT: 0x80004002 E_NOINTERFACE)).
I am using a background worker and am attempting to use the following code. However I keep getting this error on i "Unable to cast object of type 'ObjectCollection' to type 'System.Array'."
Private Sub btnVerify_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles btnVerify.Click myArray = listProxies.Items() BackgroundWorker1.RunWorkerAsync() End Sub
I have a generic Class I'm using to hold information loaded from a database.I have a method which takes a DataRow as an argument, uses the object's known column name and extracts the data from the DataRow, such that:Dim loadData As T = CType(myDataRow("myColumnName"), T))works as my default assignment in most cases.Unfortunately, due to some horrifying design constraints, some of my columns may be null, and may also be taken from enumerations.This means that when <T> is Nullable(Of SomeEnumeration) the above code does not work because I can't cast 0 directly to SomeEnumeration.Zero.Is there some way to check whether <T> is Nullable(Of [Enum])? Or some way to write a method which allows Integers to be cast to Nullable(Of [Enum])?I feel like I'm forgetting something that would allow me to write one of the other of these, but my weak google-fu is turning up nothing.
EDIT: Okay, thanks to dasblinkenlight's answer below, I can detect when this circumstance is occurring, but what I need to do now is to take a type <T> which I know is Nullable(Of SomeClass), get a type reference to SomeClass and then create a new object of type Nullable(Of SomeClass) and assign that to LoadData.My problem was that I had a lot of difficulty in finding any function which would accept baseType as an actual Type.Parse accepted baseType as a parameter, I knew baseType was an [Enum] type because of dasblinkenlight's code, so I was, in this instance, able to code a solution. It's a solution which is very specific to my problem (i.e., T is Nullable(of SomeEnumeration)), but it's a solution nonetheless.
I have given reference to Microsoft HTML in COM (am using VB 2008)
"Unable to cast object of type 'System.Windows.Forms.HtmlElement' to type 'mshtml.IHTMLElement'."
I want to retrieve all the properties like the class name, html id of every object in the web browser. I am getting the above exception when i try to direct cast it.[code]...
Dim XmlFile As FileStream = New FileStream(path, FileMode.Open) Dim Serializer As XmlSerializer = New XmlSerializer(GetType(gpxType)) ''here I get error Dim GPX As gpxType = New gpxType
[code]....
I get InvalidOperationException was unhandled. Whats wrong?
Is there way to set custom metadata to files of any type? I want the metadata to be copied when the file is renamed, moved or copied. I don't want to use ADS.
I'm building a vb.net application that composes messages for later message queueing in accordance with a predefined schema that an observer of the message queue requires.I've made the XSD file for the schema already, but I was wondering if there was any way to import the schema as or convert it to a custom object type in my .net application, where the elements of the schema would represent data fields or sub-objects to be filled programmatically.
Is there any way to do this?Am I getting my terminology correct here, or would there be a better way to accomplish what I'm attempting to do?I'd like to be able to create a schema and use it as a definition for some kind of data transfer object in my applications, without having to make the object as a separate VB class file.
I have been trying to use vb2008 to automatically update CustomDocumentProperties fields that I have set up within a pro-forma document. I can load the Word application and word document without problems.I want to update the CustomDocumentProperties fields with data read from a dB. To do this I am assuming that I need to iterate through the CustomDocumentProperties fields within the word document and when one is "found" that matches the data I wish to merge then assign the dB value to the field.The problem is that I am getting an exception error when I try to reference the document customdocumentproperties
"Error : Unable to cast the COM object of type 'System._ComObject' to interface type 'Microsoft.Office.Interop.Word.CustomProperties'. ...... "
my code looks like;
Dim WordApp As Word._Application Dim odoc As Word._Document Dim BContinue As Boolean = True
I'd like to auto-register the common/simple services in my unity container. I think the cleanest way to do this would be via a custom atribute.I can then examine all the (abstract) classes in an assembly and register those types with unity.The piece of information I'm missing is the interface(s) that the class wants to be registered against
eg:
Public Class AutoRegisterAttribute Public Property ForInterface As System.Type Public Sub New(ForInterface As System.Type)
[code]....
Note, I don't just want to find any class it implements as shown with IDisposableI've tried doing this using generics (generics can't inherit from Attribute), with a Type Parameter (Passing in IEngine.GetType results in a "Constant expression is required")