all groups > asp.net building controls > november 2005 >
You're in the

asp.net building controls

group:

Object of type 'System.String' cannot be converted to type 'System


Object of type 'System.String' cannot be converted to type 'System Robert
11/18/2005 1:49:06 PM
asp.net building controls:
I'm trying to get a control from metabuilders.com dual list)to work under
ASP.NET 2.0. It worked find under 1.1 and then when i migrated my
application to 2.0 I ran into problems with it.

However, I'm getting an error on a particular line as follows:

Exception: System.Web.HttpUnhandledException: Exception of type
'System.Web.HttpUnhandledException' was thrown. --->
System.ArgumentException: Object of type 'System.String' cannot be converted
to type 'System.Web.VirtualPath'.
at System.RuntimeType.CheckValue(Object value, Binder binder, CultureInfo
culture, BindingFlags invokeAttr)
at System.Reflection.MethodBase.CheckArguments(Object[] parameters, Binder
binder, BindingFlags invokeAttr, CultureInfo culture, Signature sig)
at System.Reflection.RuntimeMethodInfo.Invoke(Object obj, BindingFlags
invokeAttr, Binder binder, Object[] parameters, CultureInfo culture, Boolean
skipVisibilityChecks)
at System.Reflection.RuntimeMethodInfo.Invoke(Object obj, BindingFlags
invokeAttr, Binder binder, Object[] parameters, CultureInfo culture)
at MetaBuilders.WebControls.DynamicListBoxResourceHandler.DetermineIsRegistere
d()
at MetaBuilders.WebControls.DynamicListBoxResourceHandler.get_IsRegistered()
at
MetaBuilders.WebControls.DynamicListBoxResourceHandler.RegisterScript(Page
page, String scriptKey, String scriptFile)
at MetaBuilders.WebControls.DualList.RegisterScriptLibrary()
at MetaBuilders.WebControls.DualList.RegisterScript()
at MetaBuilders.WebControls.DualList.OnPreRender(EventArgs e)
at System.Web.UI.Control.PreRenderRecursiveInternal()
at System.Web.UI.Control.PreRenderRecursiveInternal()
at System.Web.UI.Control.PreRenderRecursiveInternal()
at System.Web.UI.Page.ProcessRequestMain(Boolean
includeStagesBeforeAsyncPoint, Boolean includeStagesAfterAsyncPoint)


The function where the error occurs is below and the line causing the error
reads "Object handler = findMapping.Invoke..."

I'm a bit lost because I'm having trouble understanding exactly what this
function does and why all of sudden it does not work under 2.0 but works fine
under 1.1.

Any ideas or suggestions? I'm also at the point of throwning the thing
completely out and creating my own. The metabuilders site seems to be
basically dead for the past year so I'm out of luck getting help there.

private static Boolean DetermineIsRegistered() {
Object handlerMap =
System.Web.HttpContext.GetAppConfig("system.web/httpHandlers");
if ( handlerMap == null ) {
return false;
}

MethodInfo findMapping = handlerMap.GetType().GetMethod("FindMapping",
BindingFlags.Instance | BindingFlags.Public | BindingFlags.NonPublic );
if ( findMapping == null ) {
return false;
}

Object handler = findMapping.Invoke(handlerMap, new Object[] { "GET",
handlerName } );
if ( handler == null ) {
return false;
}

PropertyInfo handlerPathProperty = handler.GetType().GetProperty("Path",
BindingFlags.NonPublic | BindingFlags.Instance );
if ( handlerPathProperty == null ) {
return false;
}

String handlerPath = handlerPathProperty.GetValue(handler,null) as String;
if ( handlerPath == null || handlerPath != handlerName ) {
return false;
}

return true;
RE: Object of type 'System.String' cannot be converted to type 'System stcheng NO[at]SPAM online.microsoft.com
11/19/2005 12:00:00 AM
Hello Robert,

Welcome to ASPNET newsgroup.
From your description, you're using a certain 3rd party webcontrol in your
asp.net applicaiton, it works well in ASP.NET 1.1 and after upgrate to the
asp.net 2.0 ,it no longer work and throw some parameter converting error ,
yes?

Based on the exception message and call stack you provided, seems that
webcontrol is using the HttpContext.GetAppConfig method to retrieve
web.config's configuration info in your certain web control. And based on
my research the HttpContext.GetAppConfig method return an object instance
(of a internal class type), so this method is not designed for external
use(mainly used by asp.net runtime internally), also in asp.net 2.0 this
method has been marked as obsolete. So the problem must be caused by some
internal implementation of the method and its return type has been changed.
And from MSDN documenation , we can find that in ASP.NET 2.0, we're
suggested to use the
System.Web.Configuration.WebConfigurationManager.GetWebApplicationSection
instead of the HttpContext.GetAppConfig since the .net framework 2.0 has
provided much more powerful interfaces to retrieve application
configuration data......

So as for your scenario, the webcontrol is developed by 3rd party, I'm
afraid we have to contact the 3rd party to see whether they've provided new
version which has used the new interfaces which can work correctly in
ASP.NET 2.0.

Thanks,

Steven Cheng
Microsoft Online Support

Get Secure! www.microsoft.com/security
(This posting is provided "AS IS", with no warranties, and confers no
rights.)



--------------------
| Thread-Topic: Object of type 'System.String' cannot be converted to type
'System
| thread-index: AcXsieY8VZqgYbrQTKSV+fK7fieRiQ==
| X-WBNR-Posting-Host: 67.180.214.235
| From: =?Utf-8?B?Um9iZXJ0?= <robertv@noemail.nospam>
| Subject: Object of type 'System.String' cannot be converted to type
'System
| Date: Fri, 18 Nov 2005 13:49:06 -0800
| Lines: 78
| Message-ID: <01F487D4-95BA-4BB8-BDFB-5574015111C0@microsoft.com>
| MIME-Version: 1.0
| Content-Type: text/plain;
| charset="Utf-8"
| Content-Transfer-Encoding: 7bit
| X-Newsreader: Microsoft CDO for Windows 2000
| Content-Class: urn:content-classes:message
| Importance: normal
| Priority: normal
| X-MimeOLE: Produced By Microsoft MimeOLE V6.00.3790.0
| Newsgroups: microsoft.public.dotnet.framework.aspnet.buildingcontrols
| NNTP-Posting-Host: TK2MSFTNGXA03.phx.gbl 10.40.2.250
| Path: TK2MSFTNGXA02.phx.gbl!TK2MSFTNGXA01.phx.gbl!TK2MSFTNGXA03.phx.gbl
| Xref: TK2MSFTNGXA02.phx.gbl
microsoft.public.dotnet.framework.aspnet.buildingcontrols:14007
| X-Tomcat-NG: microsoft.public.dotnet.framework.aspnet.buildingcontrols
|
| I'm trying to get a control from metabuilders.com dual list)to work under
| ASP.NET 2.0. It worked find under 1.1 and then when i migrated my
| application to 2.0 I ran into problems with it.
|
| However, I'm getting an error on a particular line as follows:
|
| Exception: System.Web.HttpUnhandledException: Exception of type
| 'System.Web.HttpUnhandledException' was thrown. --->
| System.ArgumentException: Object of type 'System.String' cannot be
converted
| to type 'System.Web.VirtualPath'.
| at System.RuntimeType.CheckValue(Object value, Binder binder, CultureInfo
| culture, BindingFlags invokeAttr)
| at System.Reflection.MethodBase.CheckArguments(Object[] parameters,
Binder
| binder, BindingFlags invokeAttr, CultureInfo culture, Signature sig)
| at System.Reflection.RuntimeMethodInfo.Invoke(Object obj, BindingFlags
| invokeAttr, Binder binder, Object[] parameters, CultureInfo culture,
Boolean
| skipVisibilityChecks)
| at System.Reflection.RuntimeMethodInfo.Invoke(Object obj, BindingFlags
| invokeAttr, Binder binder, Object[] parameters, CultureInfo culture)
| at
MetaBuilders.WebControls.DynamicListBoxResourceHandler.DetermineIsRegistere
| d()
| at
MetaBuilders.WebControls.DynamicListBoxResourceHandler.get_IsRegistered()
| at
|
MetaBuilders.WebControls.DynamicListBoxResourceHandler.RegisterScript(Page
| page, String scriptKey, String scriptFile)
| at MetaBuilders.WebControls.DualList.RegisterScriptLibrary()
| at MetaBuilders.WebControls.DualList.RegisterScript()
| at MetaBuilders.WebControls.DualList.OnPreRender(EventArgs e)
| at System.Web.UI.Control.PreRenderRecursiveInternal()
| at System.Web.UI.Control.PreRenderRecursiveInternal()
| at System.Web.UI.Control.PreRenderRecursiveInternal()
| at System.Web.UI.Page.ProcessRequestMain(Boolean
| includeStagesBeforeAsyncPoint, Boolean includeStagesAfterAsyncPoint)
|
|
| The function where the error occurs is below and the line causing the
error
| reads "Object handler = findMapping.Invoke..."
|
| I'm a bit lost because I'm having trouble understanding exactly what this
| function does and why all of sudden it does not work under 2.0 but works
fine
| under 1.1.
|
| Any ideas or suggestions? I'm also at the point of throwning the thing
| completely out and creating my own. The metabuilders site seems to be
| basically dead for the past year so I'm out of luck getting help there.
|
| private static Boolean DetermineIsRegistered() {
| Object handlerMap =
| System.Web.HttpContext.GetAppConfig("system.web/httpHandlers");
| if ( handlerMap == null ) {
| return false;
| }
|
| MethodInfo findMapping = handlerMap.GetType().GetMethod("FindMapping",
| BindingFlags.Instance | BindingFlags.Public | BindingFlags.NonPublic );
| if ( findMapping == null ) {
| return false;
| }
|
| Object handler = findMapping.Invoke(handlerMap, new Object[] { "GET",
| handlerName } );
| if ( handler == null ) {
| return false;
| }
|
| PropertyInfo handlerPathProperty =
handler.GetType().GetProperty("Path",
| BindingFlags.NonPublic | BindingFlags.Instance );
| if ( handlerPathProperty == null ) {
| return false;
| }
|
| String handlerPath = handlerPathProperty.GetValue(handler,null) as
String;
| if ( handlerPath == null || handlerPath != handlerName ) {
| return false;
| }
|
| return true;
| }
|
RE: Object of type 'System.String' cannot be converted to type 'System v-kevy NO[at]SPAM online.microsoft.com
11/19/2005 6:04:09 AM
Hi,

We have reviewed this issue and are currently researching on it. We will
update you ASAP. Thanks for your patience!

Kevin Yu
=======
"This posting is provided "AS IS" with no warranties, and confers no
rights."
RE: Object of type 'System.String' cannot be converted to type 'Sy Robert
11/19/2005 1:11:04 PM
Thanks for your response. I have sent to them and will see if i get a
response back. Otherwise I'll just roll my own control from scratch since
there's is a bit overly heavy for what I am using it for and it will be
easier to build a simpler one to meet my needs from scratch then try to
figure out the purpose of the section that is causing an issue.

If i get a response back, I'll post how to fix the problem in the event
someone else is interested down the road.

Thanks for the speedy response.

[quoted text, click to view]
RE: Object of type 'System.String' cannot be converted to type 'Sy stcheng NO[at]SPAM online.microsoft.com
11/20/2005 6:51:21 AM
Thanks for your response Robert,

Yes, if it's not very complex to construct a new custom webcontrol to
replace that 3rd party one, that'll be the quickest and most convenience
approach since we can utilize the new ASP.NET 2.0 configuration model.
Anyway, please feel free to post here when you got any progress or need any
further assistance.

Thanks,

Steven Cheng
Microsoft Online Support

Get Secure! www.microsoft.com/security
(This posting is provided "AS IS", with no warranties, and confers no
rights.)
--------------------
| Thread-Topic: Object of type 'System.String' cannot be converted to type
'Sy
| thread-index: AcXtTcCZu2zXsbeBSoGWufO+10asTw==
| X-WBNR-Posting-Host: 67.180.214.235
| From: =?Utf-8?B?Um9iZXJ0?= <robertv@noemail.nospam>
| References: <01F487D4-95BA-4BB8-BDFB-5574015111C0@microsoft.com>
<kB2i4GR7FHA.1236@TK2MSFTNGXA02.phx.gbl>
| Subject: RE: Object of type 'System.String' cannot be converted to type
'Sy
| Date: Sat, 19 Nov 2005 13:11:04 -0800
| Lines: 170
| Message-ID: <F57F16AA-943A-46E9-ABA7-97E4C9169189@microsoft.com>
| MIME-Version: 1.0
| Content-Type: text/plain;
| charset="Utf-8"
| Content-Transfer-Encoding: 7bit
| X-Newsreader: Microsoft CDO for Windows 2000
| Content-Class: urn:content-classes:message
| Importance: normal
| Priority: normal
| X-MimeOLE: Produced By Microsoft MimeOLE V6.00.3790.0
| Newsgroups: microsoft.public.dotnet.framework.aspnet.buildingcontrols
| NNTP-Posting-Host: TK2MSFTNGXA03.phx.gbl 10.40.2.250
| Path: TK2MSFTNGXA02.phx.gbl!TK2MSFTNGXA01.phx.gbl!TK2MSFTNGXA03.phx.gbl
| Xref: TK2MSFTNGXA02.phx.gbl
microsoft.public.dotnet.framework.aspnet.buildingcontrols:14018
| X-Tomcat-NG: microsoft.public.dotnet.framework.aspnet.buildingcontrols
|
| Thanks for your response. I have sent to them and will see if i get a
| response back. Otherwise I'll just roll my own control from scratch
since
| there's is a bit overly heavy for what I am using it for and it will be
| easier to build a simpler one to meet my needs from scratch then try to
| figure out the purpose of the section that is causing an issue.
|
| If i get a response back, I'll post how to fix the problem in the event
| someone else is interested down the road.
|
| Thanks for the speedy response.
|
[quoted text, click to view]
|
| > Hello Robert,
| >
| > Welcome to ASPNET newsgroup.
| > From your description, you're using a certain 3rd party webcontrol in
your
| > asp.net applicaiton, it works well in ASP.NET 1.1 and after upgrate to
the
| > asp.net 2.0 ,it no longer work and throw some parameter converting
error ,
| > yes?
| >
| > Based on the exception message and call stack you provided, seems that
| > webcontrol is using the HttpContext.GetAppConfig method to retrieve
| > web.config's configuration info in your certain web control. And based
on
| > my research the HttpContext.GetAppConfig method return an object
instance
| > (of a internal class type), so this method is not designed for external
| > use(mainly used by asp.net runtime internally), also in asp.net 2.0
this
| > method has been marked as obsolete. So the problem must be caused by
some
| > internal implementation of the method and its return type has been
changed.
| > And from MSDN documenation , we can find that in ASP.NET 2.0, we're
| > suggested to use the
| >
System.Web.Configuration.WebConfigurationManager.GetWebApplicationSection
| > instead of the HttpContext.GetAppConfig since the .net framework 2.0
has
| > provided much more powerful interfaces to retrieve application
| > configuration data......
| >
| > So as for your scenario, the webcontrol is developed by 3rd party, I'm
| > afraid we have to contact the 3rd party to see whether they've provided
new
| > version which has used the new interfaces which can work correctly in
| > ASP.NET 2.0.
| >
| > Thanks,
| >
| > Steven Cheng
| > Microsoft Online Support
| >
| > Get Secure! www.microsoft.com/security
| > (This posting is provided "AS IS", with no warranties, and confers no
| > rights.)
| >
| >
| >
| > --------------------
| > | Thread-Topic: Object of type 'System.String' cannot be converted to
type
| > 'System
| > | thread-index: AcXsieY8VZqgYbrQTKSV+fK7fieRiQ==
| > | X-WBNR-Posting-Host: 67.180.214.235
| > | From: =?Utf-8?B?Um9iZXJ0?= <robertv@noemail.nospam>
| > | Subject: Object of type 'System.String' cannot be converted to type
| > 'System
| > | Date: Fri, 18 Nov 2005 13:49:06 -0800
| > | Lines: 78
| > | Message-ID: <01F487D4-95BA-4BB8-BDFB-5574015111C0@microsoft.com>
| > | MIME-Version: 1.0
| > | Content-Type: text/plain;
| > | charset="Utf-8"
| > | Content-Transfer-Encoding: 7bit
| > | X-Newsreader: Microsoft CDO for Windows 2000
| > | Content-Class: urn:content-classes:message
| > | Importance: normal
| > | Priority: normal
| > | X-MimeOLE: Produced By Microsoft MimeOLE V6.00.3790.0
| > | Newsgroups: microsoft.public.dotnet.framework.aspnet.buildingcontrols
| > | NNTP-Posting-Host: TK2MSFTNGXA03.phx.gbl 10.40.2.250
| > | Path:
TK2MSFTNGXA02.phx.gbl!TK2MSFTNGXA01.phx.gbl!TK2MSFTNGXA03.phx.gbl
| > | Xref: TK2MSFTNGXA02.phx.gbl
| > microsoft.public.dotnet.framework.aspnet.buildingcontrols:14007
| > | X-Tomcat-NG: microsoft.public.dotnet.framework.aspnet.buildingcontrols
| > |
| > | I'm trying to get a control from metabuilders.com dual list)to work
under
| > | ASP.NET 2.0. It worked find under 1.1 and then when i migrated my
| > | application to 2.0 I ran into problems with it.
| > |
| > | However, I'm getting an error on a particular line as follows:
| > |
| > | Exception: System.Web.HttpUnhandledException: Exception of type
| > | 'System.Web.HttpUnhandledException' was thrown. --->
| > | System.ArgumentException: Object of type 'System.String' cannot be
| > converted
| > | to type 'System.Web.VirtualPath'.
| > | at System.RuntimeType.CheckValue(Object value, Binder binder,
CultureInfo
| > | culture, BindingFlags invokeAttr)
| > | at System.Reflection.MethodBase.CheckArguments(Object[] parameters,
| > Binder
| > | binder, BindingFlags invokeAttr, CultureInfo culture, Signature sig)
| > | at System.Reflection.RuntimeMethodInfo.Invoke(Object obj,
BindingFlags
| > | invokeAttr, Binder binder, Object[] parameters, CultureInfo culture,
| > Boolean
| > | skipVisibilityChecks)
| > | at System.Reflection.RuntimeMethodInfo.Invoke(Object obj,
BindingFlags
| > | invokeAttr, Binder binder, Object[] parameters, CultureInfo culture)
| > | at
| >
MetaBuilders.WebControls.DynamicListBoxResourceHandler.DetermineIsRegistere
| > | d()
| > | at
| >
MetaBuilders.WebControls.DynamicListBoxResourceHandler.get_IsRegistered()
| > | at
| > |
| >
MetaBuilders.WebControls.DynamicListBoxResourceHandler.RegisterScript(Page
| > | page, String scriptKey, String scriptFile)
Re: Object of type 'System.String' cannot be converted to type 'System alcsharp
4/19/2006 2:46:46 PM

Hi Robert,
I just came across your post as I was looking for a solution for the
same exact issue using metabuilder's DualList in .Net 2.0. I know it's
a bit late since you posted this months ago but I have a solution to it
that seems to be working. Let me know if you're still interested and
I'll post the changes to sourcecode provided with the control that got
it working for me (was only 2 lines that had to change).
Thanks,
Alex


[quoted text, click to view]



--
alcsharp
------------------------------------------------------------------------
Posted via http://www.codecomments.com
------------------------------------------------------------------------
Re: Object of type 'System.String' cannot be converted to type 'System 阿利
4/20/2006 2:00:53 AM

alcsharp =E5=AF=AB=E9=81=93=EF=BC=9A

[quoted text, click to view]

yea ~ I'd like to know , please send me a copy :D

Miz
Re: Object of type 'System.String' cannot be converted to type 'System alcsharp
4/21/2006 3:08:17 PM

Ok.. sorry didn't post code orginally but I was on another workstation
than the one that had the code.

In DynamicListBoxResourceHandler.cs...
Change the line that reads: (line 101 in my code)

Object handlerMap =
System.Web.HttpContext.GetAppConfig("system.web/httpHandlers");

TO

Object handlerMap =
System.Web.HttpContext.GetAppConfig("httpHandlers");

----------------------------------------------
Then in DynamicListBox.js...
Change line that reads: (line 25 in my code)

list.Tracker = DynamicListBox_FindControl( list.name + ":itemTracker"
);

TO

list.Tracker = DynamicListBox_FindControl( list.name + "$itemTracker"
);


That's it. That seemed to do it for me.



--
alcsharp
------------------------------------------------------------------------
Posted via http://www.codecomments.com
------------------------------------------------------------------------
Re: Object of type 'System.String' cannot be converted to type 'System biju.mulakavaluppil
5/17/2006 3:45:14 AM

I did as per your saying .. now i get a Dll file. but when i put the dll
file in the bin directory i get the following error

Value cannot be null,Parameter name:stream

Please let me know the reason for the same.

Thanks and Regards
Biju



--
biju.mulakavaluppil
------------------------------------------------------------------------
Posted via http://www.codecomments.com
------------------------------------------------------------------------
AddThis Social Bookmark Button