C# - Runtime InvalidCastException With Implicit Cast Operator?

Oct 13, 2009

I have a C# library that internal clients configure with VB.Net Their scripts are throwing an InvalidCastException where they really shouldn't.

So the code is something like this (massively simplified):

//C#3
public class Foo {
public static implicit operator Foo ( Bar input )

[Code].....

Strange - it looks like the VB.net compiler can find the cast operator but it's lost at runtime. Surely the VB and C# IL will be pretty similar here?

The VB.net code is dynamically compiled - the compile happens the first time a user logs into the app. it's being compiled as VB.Net against .Net 3.5, and I'm not using any COM interop.

View 1 Replies


ADVERTISEMENT

Provide Cast Methods For Cast Operator Overloads In C#?

Jun 3, 2009

I read somewhere that older VB .net (pre VB .NET 2005?) couldn't use overloaded operators in a C# class. Is it true for overloaded cast operators?Either way do you guys think it's a disadvantage for a C# class library not to include them and arithmetic methods as actual methods for other languages, like:

ToDouble
ToFloat
FromDouble
Add

[code]....

View 1 Replies

InvalidCastException - Specified Cast Is Not Value

Apr 9, 2010

I have a field named 'UserID' in my OLE database with the type 'Autonumber'. But when I try to cast it to a variable of type 'String' I get an an InvalidCastException - Specified cast is not value.

View 16 Replies

Define An Implicit Conversion Operator In Program?

Aug 21, 2009

In C# you can use the implicit keyword to define an implicit user-defined type conversion operator.

In VB.NET you can define a CType conversion operator that will explicitly convert a user-defined type into another type.

Is there a way to declare an implicit conversion operator in VB.NET?

View 2 Replies

Linq Query Has An Implicit Cast Error For DataGridViewRow When Option Strict Is Enabled?

Jul 6, 2009

I have a DataGridView that is bound to a list of objects called "BaseChange". The BaseChange objects are made up of 4 properties...

ChangeType
ChangeStatus
ChangeDescription
LastChangeDate

The datagridview has columns for all 4 values as well as a 5th (a checkbox column called "colIsSelected"). There is no problem binding the list to the grid and displaying the items. The problem is that the query that gets the selected items in the grid is giving me an implicit cast error when option strict is enabled.

This is the query...

Dim _changes As List(Of BaseChange)
_changes = (From _row As DataGridViewRow In dgvChanges.Rows() _
Where Convert.ToBoolean(_row.Cells(NAME_COLUMN_IS_SELECTED).Value) = True _
Select DirectCast(_row.DataBoundItem, BaseChange)).ToList()

...and it produces the correct results with option strict off. The implicit cast squiggle is on the "row As DataGridViewRow" code, and the full message is "Implicit conversion from 'Object' to 'System.Windows.Forms.DataGridViewRow'*".

If I exclude the "As DataGridViewRow" from the query, I get a late binding error on the _row.Cells and _row.DataBoundItem and this also fails option strict.I need this to work with Option Strict enabled, and in VB.

View 1 Replies

System.InvalidCastException: Cast From Type 'DBNull' To Type 'Integer' Is Not Valid?

Mar 8, 2009

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

[code].....

View 1 Replies

.net - Cast To Generic Type At Runtime?

Sep 9, 2010

I'm in the process of creating a function which reflects over the properties in a class and adds them to this data structure I have. Some of the properties are generic types.So say we have DataType(Of T) that has a .Value property of type T:

Dim properties = GetType(MyType).GetFields(Reflection.BindingFlags.Public Or _
Reflection.BindingFlags.Instance)
For Each prop As fieldinfo In properties
Collection.Add(prop.Name,prop.GetValue(poco))
Next

In the collection.Add for primitive types (Integer, String, etc....) I just want to add the type... but in the case of generic I want to add the DataType(Of T).Value. I hope there is some work-around but I don't think there is a way because the type of T can not be determined at compile time right? Ideally DirectCast(prop.getvalue(poco), DataType(Of T)).Value would be possible. This is when you hoped even more dynamics appear than whats in .NET 4.0.

View 2 Replies

Cast An Object To A Type Extracted At Runtime?

Jan 25, 2012

I am using reflection to get an object's type, or for this issue an object that has instance properties type, at runtime and then I need to change an existing variable's type into that newly found type. Is this possible? For example, the following code does not work in the line indicated within:

Public Sub DoSomething(x As T, y As T, exp As String)
'This is a instance property on the object of a different type
'i.e. 'T.AnotherType' We need to reflect to find out what type of object

[code].....

View 1 Replies

Late Bound Resolution; Runtime Errors May Occur""implicit Conversion From 'Object' To 'String'

Sep 16, 2011

I have written a small program to aide my business and the program works fine. But while compiling the code it shows a lot of warnings like the following."late bound resolution; run time errors may occur""implicit conversion from 'Object' to 'String'." Where am i going wrong. Even though the options strict off removes the warning I want to correct the warnings.

Private Function ledgerMasterFullName(ByVal i As Integer) As String
Dim fullName As String
Dim vObj As Object

[code]....

View 4 Replies

Case (in) Sensitive Comparison With Operator In Runtime (without Option Compare)

Jun 24, 2011

Is there anyway to use LIKE operator in VB.NET as case sensitive or insensitive during runtime? For example use a flag to do case sensitive or insensitive comparisons.Obviously this can be done by simple converting them into lower case and forcing application to Option Compare Binary but maybe there is a better way to do this?

View 1 Replies

.net - Call To Ctype Failing At Runtime For Cast From Int To Generic Type?

Feb 25, 2011

I know about the existence of System.Nullable(Of T) Structure.I am trying to write a class to replace it: The Nullable(Of T) Class [VB code below]. But when I tested the Nullable(Of T) Class (See NullableOfTClassTest Class, Method Main) an exception occurs when using the CType operator to convert from System.Int32.Why does this happen at runtime, why isn't my Ctype operator method being called?

NOTE: code below reordered and reduced in order to hilite problem.

Namespace MyNamespace
Public NotInheritable Class NullableOfTClassTest
Private Sub New()
End Sub

[Code]...

View 2 Replies

Runtime Error : Operator '=' Is Not Defined For Types 'Object' And '1-dimensional Array Of DataRow'

Jan 1, 2008

I have set my datasource on my datagridview to be a subset of rows as follows:

dg.DataSource = myDataSet.testTable.Select("id=" & id)

But I get a runtime error that Operator '=' is not defined for types 'Object' and '1-dimensional array of DataRow' There should be an easy way to do this that doesn't involve creating new tables, etc.

View 7 Replies

Get A Runtime Error Msg Thats Says "Syntax Error(Missing Operator) In Query Expression"

Mar 29, 2011

I am having a problem with this code. I have used this code before on other apps and it works, but I don't have a clue as to what is going on here.

This is the whole event. I get a runtime error msg thats says "Syntax error(Missing Operator) in query expression"

I think this is Legacy SQL coding but I don't know how to make it better.

Private Sub btnEdit_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles btnEdit.Click
Dim Question As Integer

[Code].....

View 7 Replies

Error: Option Strict On Disallows Operands Of Type Object For Operator '='. Use The 'Is' Operator To Test For Object Identity

Jan 27, 2010

I am tightening up my coding with the Option Strict set to ON. It has now produced alot of errors. An example of this is:

If AllocatedDGV.Rows(i).Cells("RoomNumber").Value = RoomsAvailableDGV.Rows(j).Cells("RoomName").Value Then

It gives me the following error: Option Strict On disallows operands of type Object for operator '='. Use the 'Is' operator to test for object identity.

View 6 Replies

Option Strict On Disallows Operands Of Type Object For Operator Use The 'Is' Operator To Test For Object Identity

Apr 6, 2012

I need to write an interface to get data to/from our data files.

We have a low level class that holds field values for each record read from the files.

This just holds two values, the value read from the file (DBValue) and the updated value that may need to be written back to the file (CurrentValue).

These values may be any of the standard value types (integer, date etc) or a string.

Either value (DBValue or CurrentValue) may be null if not defined.

I have written the class to manage this data which works fine while option strict is NOT on.

But we have an office policy of having option strict on all the time.

When I put option strict on, my object value comparisons fail with the error: "Option Strict On disallows operands of type Object for operator '='. Use the 'Is' operator to test for object identity."

Question, how should I change the following code to handle option strict on ...

This is all running on Visual Studio 2010

[Code]...

View 1 Replies

Coalesce Operator And Conditional Operator In .NET?

Mar 10, 2009

Possible Duplicate: Is there a conditional ternary operator in VB.NET?

Can we use Coalesce operator(??) and conditional ternary operator(:) in VB.NET as in C#?

View 5 Replies

Invalid Cast Exception Was Unhandled - Unable To Cast Object Of Type 'System.String' To Type 'System.Windows.Forms.TextBox'

Feb 9, 2012

Private
Sub cmdExit_Click(ByVal
sender As System.Object,
ByVal e

[code]....

View 3 Replies

How To Use Operator As A Comparison Operator

Nov 11, 2009

I want to perform equality comparison in VB.NET and cannot get it to work. Error: value of type Boolean can not be converted to System.Drawing.PointF

[code]...

View 4 Replies

C# - Does An EventWaitHandle Have Any Implicit MemoryBarrier

Mar 25, 2009

I've frequently coded something along the lines of the sample below(with stuff like Dispose ommited for clarity. ). My question is, are the volatiles needed as shown? Or does the ManualResetEvent.Set have an implicit memory barrier as I've read Thread.Start does? Or would an explicit MemoryBarrier call be better than the volatiles? Or is it completely wrong? Also, the fact that the "implicit memory barrier behavior" in some operations is not documented as far as I've seen is quite frutrating, is there a list of these operations somewhere?

class OneUseBackgroundOp
{
background args[code].....

View 5 Replies

C# - SQL Explicit And Implicit Permissions?

Mar 14, 2012

If default 'sa' account has sys_admin permissions for the whole SQL instance and all its databases. On the database itself, if I don't have db_datareader permission enabled, I would assume it doesn't need it as it is implied but I was wondering in .net, is there way to check if db_datareader has explicitly been enabled and not just implied from the 'sa' being a sys_admin.

View 1 Replies

Implicit Conversion Of DataRow?

Feb 19, 2009

I do the following:

Dim rw() as exportDataset.vendorPricingRow = ExportDataset.vendorPricing.Select("field1 = 1")

View 5 Replies

.net - InvalidCastException Was Unhandled?

Apr 4, 2012

Dim CustID As String = txtSrchCustID.Text
Dim FirstName As String = txtNewCustFName.Text
Dim SecondName As String = txtNewCustSName.Text
If CustID And FirstName And SecondName = "" Then
MsgBox("Please enter a term to search by")
EndIf

This returns "Conversion from string "" to type 'Long' is not valid." I was wondering what the error is and how it's possible to fix it? The other questions that I've looked at were mostly to do with variables assigned incorrect types, but I think that isn't the issue. It occurs when all of the variables are empty.

View 1 Replies

Getting An InvalidCastException Unhandled?

Oct 30, 2009

OK, this is going better, now im stuck in the mud again, i am trying to get a form to print,this works now, however i would like to enable a few frames with text boxes for a few seconds to allow the printer to print the text in black instead of gray. he error i am getting is this, as the timer disables:" Unable to cast object of type System.Windows.Forms.Timer' to type 'System.Windows.Forms.ToolStripMenuItem'. "

Public
Sub
Print_Renamed_Click(ByVal

[code].....

View 6 Replies

InvalidCastException Was Unhandled?

May 15, 2011

Private Sub gvDesignGVnote_CellClick(ByVal sender As System.Object, ByVal e As System.Windows.Forms.DataGridViewCellEventArgs) Handles gvDesignGVnote.CellClick
If e.RowIndex < 0 Then[code]......

View 3 Replies

VS 2008 InvalidCastException?

Aug 15, 2010

I'm using a C# API wrapper library for connection to a program. It has worked very well for a long time, but now I have this error I can not get out of. The error occurs inside the library code (which I have not modified). It gives the following pop-up window:I believe I had this or similar type of error some times before (at least the first pop up was similar), and then I believe I just clicked "Build solution", or rebuild, and it would work. But this time not...

View 2 Replies

Asp.net - Implicit Line Continuation In VS2010?

Oct 5, 2011

As most of you know, .Net framework 4.0/Visual Studio 2010 supports implicit line continuation in VB, which was not available in previous versions (at least not to my knowledge). I have a situation where I am working on an ASP.Net 3.5 application that is targeting a machine that does not currently have .Net 4.0 installed and from what I understand it won't be installed for some time yet on that machine. Obviously, my development machine does have .net 4.0 installed.

With the implicit line continuation feature in VS2010, I sometimes find myself forgetting to add the continuation, and VS2010 does not have an issue with that even when I am targeting a previous version. Additionally, I know that if I actually compile the code (business objects and such), issues with line continuation are not a problem, as the compiled dll works fine as a 3.5 .net file.

My concern is this. There are areas where I am doing VB.Net coding in the code behind(beside?) for the asp.net pages. These would only be compiled on the server when they are first used, but since the server doesn't have the .net 4.0 framework (or even if it did), does anyone know if this would this cause the compilation to fail if I missed a line continuation? If so, is there a way to enforce using line continuation characters in VS2010?

I realize that some best practices might not be getting followed here, but I'm not about to change all the development dynamics around here just yet. Also, I'm not in an environment where I could easily test this out on my own.

View 1 Replies

C# - Compiler Does Not Do Implicit Casts To Object?

Apr 10, 2011

I've recently had a strange issue with one of my APIs reported. Essentially for some reason when used with VB code the VB compiler does not do implicit casts to Object when trying to invoke the ToString() method.The following is a minimal code example firstly in C# and secondly in VB:

Graph g = new Graph();
g.LoadFromEmbeddedResource("VDS.RDF.Configuration.configuration.ttl");
foreach (Triple t in g.Triples)[code].....

This appears to be due to the fact that the type of the property t.Subject that I am trying to write to the console has explicitly defined ToString() methods which take parameters.The VB compiler appears to expect one of these to be used and does not seem to implicitly cast to Object and use the standard Object.ToString() method whereas the C# compiler does.Is there any way around this e.g. a VB compiler option or is it best just to ensure that the type of the property (which is an interface in this example) explicitly defines an unparameterized ToString() method to ensure compatability with VB?

Graph is an implementation of an interface but that is actually irrelevant since it is the INode interface which is the type that t.Subject returns which is the issue.INode defines two overloads for ToString() both of which take parameters Yes it is a compile time error No I do not use hide-by-name, the API is all written in C# so I couldn't generate that kind of API if I wanted to

Note that I've since added an explicit unparameterized ToString() overload to the interface which has fixed the issue for VB users.

View 2 Replies

Data Loss From Implicit Conversion?

Oct 26, 2010

VB 2008 Express edition. I'm pretty new to VB2008, a little over halfway through my first classi am writing a console program to ask the user for the price of gas for 7 days, then to get the average of that price. here is my code so far:

Option Strict On
Module Module1
Sub Main()

[code].....

View 4 Replies

Defining Implicit Casting Operators?

Aug 21, 2009

In C# you can use the implicit keyword to define an implicit user-defined type conversion operator.In VB.NET you can define a CType conversion operator that will explicitly convert a user-defined type into another type.Is there a way to declare an implicit conversion operator in VB.NET?

View 1 Replies

Forbid Implicit Conversion On Parameter?

Jul 21, 2011

I have 2 methods with the same name, with diferente signatures.

Public Sub Method1(ByVal Parameter1 as String, ByVal Parameter2 as Boolean)
Public Sub Method1(ByVal Parameter1 as Integer, Optional ByVal Parameter2 as Boolean = False, Optional ByVal Parameter3 as Boolean = False)

If I call Method1("My String Parameter", False) it will not give and error, it will try to convert the parameter to integer and use the overload.

Is there a way to forbid the implicit conversion in this specific method or in this specific parameter. For instance, I changed the second method name, but its not an elegant solution.

View 7 Replies







Copyrights 2005-15 www.BigResource.com, All rights reserved