Re: DIME WSE 2.0 in .NET 2.0
- From: stcheng@xxxxxxxxxxxxxxxxxxxx (Steven Cheng [MSFT])
- Date: Wed, 16 Apr 2008 07:28:07 GMT
{\rtf1\ansi\ansicpg936\deff0\deflang1033\deflangfe2052{\fonttbl{\f0\fnil\fprq2\fcharset0 MS Sans Serif;}}
\viewkind4\uc1\pard\lang2052\f0\fs20 Thanks for your reply Rich,
\par
\par Yes, WSE 2.0 SP3 is documented to be supported on .NET framework 2.0. However, that means if you have an .NET 1.1 application that use WSE 2.0 SP3, you can move it to a machine that has only .NET 2.0 installed(also WSE 2.0 SP3 runtime components) and run it correctly. However, there is no guranetee that if you continue to rebuild the application in VS 2008 and there won't occur any problem since the WSE 2.0 SP3 may not be fully tested when the framework is targeting to the .NET 2.0+
\par
\par BTW, as for the custom SAML token manager, if you removed it or change to use another token manager, will the entire application be running correctly (after rebuild in VS 2008)? Maybe some code in the custom token manager cause the problem. Also, in the configuration section, you used the private assembly name as below:
\par
\par ======
\par IRSSaml.SamlTokenManager, IRSSaml
\par ======
\par
\par Have you tried strong-named the assembly(put into GAC) and reference through fullname to see whehter it works?
\par
\par Sincerely,
\par
\par Steven Cheng
\par
\par Microsoft MSDN Online Support Lead
\par
\par
\par Delighting our customers is our #1 priority. We welcome your comments and suggestions about how we can improve the support we provide to you. Please feel free to let my manager know what you think of the level of service provided. You can send feedback directly to my manager at: msdnmg@xxxxxxxxxxxxxx
\par
\par ==================================================
\par Get notification to my posts through email? Please refer to http://msdn.microsoft.com/subscriptions/managednewsgroups/default.aspx#notifications.
\par
\par ==================================================
\par This posting is provided "AS IS" with no warranties, and confers no rights.
\par
\par
\par \pard\li720 --------------------
\par From: "Rich Fowler" <RJF@xxxxxxxxxxxxxxxx>6750CA14E421@xxxxxxxxxxxxx> <WYIALPrnIHA.4932@xxxxxxxxxxxxxxxxxxxxxx>
\par In-Reply-To: <WYIALPrnIHA.4932@xxxxxxxxxxxxxxxxxxxxxx>
\par Subject: Re: DIME WSE 2.0 in .NET 2.0
\par Date: Tue, 15 Apr 2008 23:56:59 -0600
\par
\par Steven,
\par
\par Ok, I've been doing some further research based on your reply. WSE 2.0 SP3
\par is supported and runs under .NET 2.0 (3.5). That is it is an (one or more)
\par .NET 1.1 assemblies that will run under .NET 2.0. So the .NET 2.0 framework
\par is running the WSE 2.0 SP3 processes. That is, only one framework is
\par running. I was probably using the word 'target' incorrectly. I was referring
\par to the VS.NET 2008 project target framework value. I have this set to 3.5
\par for all my projects referenced by the application.
\par
\par The error seems to occur when trying to load the custom assembly for
\par SecurityTokenManager. Has the syntax changed for the references to the
\par assemblies. Note: The error is showing a null value for the name.
\par
\par <security>
\par <securityTokenManager type="IRSSaml.SamlTokenManager, IRSSaml"
\par xmlns:saml="urn:oasis:names:tc:SAML:1.0:assertion" qname="saml:Assertion"/>
\par <securityTokenManager type="IRSSaml.UserTokenManager, IRSSaml,
\par DATWebService"
\par xmlns:wsse="http://docs.oasis-open.org/wss/2004/01/oasis-200401-wss-wssecurity-secext-1.0.xsd"
\par qname="wsse:UsernameToken"/>
\par </security>
\par
\par The inner exception I get is:
\par \{"The given assembly name or codebase was invalid. (Exception from HRESULT:
\par 0x80131047)":null\} System.Exception \{System.IO.FileLoadException\}
\par
\par This happens at:
\par at System.RuntimeTypeHandle._GetTypeByName(...)
\par at System.RuntimeTypeHandle.GetTypeByName(...)
\par at System.RuntimeType.PrivateGetType(...)
\par at System.Type.GetType(...)
\par at
\par Microsoft.Web.Services2.Security.Configuration.SecurityConfiguration.LoadSecurityTokenManager(...)
\par ...
\par
\par Thanks - Rich F.
\par
\par "Steven Cheng [MSFT]" <stcheng@xxxxxxxxxxxxxxxxxxxx> wrote in message
\par news:WYIALPrnIHA.4932@xxxxxxxxxxxxxxxxxxxxxxxxx
\par > Thanks for your reply.
\par >
\par > Yes, it is pity that WSE 3.0 no longer support DIME. Actually the reason
\par > DIME is removed is because WSE is an .NET based implementation of the WS-*
\par > secuirty specs. And according to the new version, binary attachment is
\par > also
\par > improved by the MTOM format which is more efficient and natural to
\par > webservice/SOAP. DIME itself is not part of the SOAP envelope(added as an
\par > additional part in SOAP/HTTP message).
\par >
\par > So far, for running WSE 2.0 on .NET framework 1.1, you need to make the
\par > entire client application(not only the WSE webservice proxy part)
\par > configured to target .net framework 1.1. Thus, you actually do not need to
\par > convert that project and use app.config to force it execute under .net
\par > framework 1.1.
\par >
\par > http://msdn2.microsoft.com/en-us/library/9w519wzk(VS.80).aspx
\par >
\par > The fact that you need to make the entire application/project as .NET 1.1
\par > is due to a given process can only load a single version of .net framework
\par > runtime and system class libraries. In other words, in a single process,
\par > you can not load two different version of .net runtime(and let one execute
\par > under 1.1 while another part execute under 2.0).
\par >
\par > Sincerely,
\par >
\par > Steven Cheng
\par >
\par > Microsoft MSDN Online Support Lead
\par >
\par >
\par > Delighting our customers is our #1 priority. We welcome your comments and
\par > suggestions about how we can improve the support we provide to you. Please
\par > feel free to let my manager know what you think of the level of service
\par > provided. You can send feedback directly to my manager at:
\par > msdnmg@xxxxxxxxxxxxxx
\par >
\par > ==================================================
\par > Get notification to my posts through email? Please refer to
\par > http://msdn.microsoft.com/subscriptions/managednewsgroups/default.aspx#notif
\par > ications.
\par >
\par > ==================================================
\par > This posting is provided "AS IS" with no warranties, and confers no
\par > rights.
\par >
\par >
\par > --------------------
\par > From: "Rich Fowler" <RJF@xxxxxxxxxxxxxxxx>
\par > References: <8B62735A-824A-404E-AAB0-86FE5BA1C028@xxxxxxxxxxxxx>
\par > <6h5w5tumIHA.10116@xxxxxxxxxxxxxxxxxxxxxx>
\par > <9978732B-6648-4410-A28C-87297110F0E3@xxxxxxxxxxxxx>
\par > <TBQd8nfnIHA.8872@xxxxxxxxxxxxxxxxxxxxxx>
\par > In-Reply-To: <TBQd8nfnIHA.8872@xxxxxxxxxxxxxxxxxxxxxx>
\par > Subject: Re: DIME WSE 2.0 in .NET 2.0
\par > Date: Mon, 14 Apr 2008 08:17:31 -0600
\par >
\par > Yes, I installed the Full WSE 2.0 SP3 on the new development system. The
\par > NET 1.1 application worked fine on the new development system. The .NET
\par > 3.5
\par > version still receives the exception at runtime.
\par >
\par > Yes, I found more information about the schema validation errors displayed
\par > in VS.NET and that they can be ignored.
\par >
\par > We prefer to move all our development environment.NET 3.5. Maintaining two
\par > VS.NET development setups, one for .NET 3.5 and one for .NET 1.1, just for
\par > a
\par > couple of dlls, is a lot of wasted time and resources for several
\par > developers. If we need only to maintain the custom security dlls in .NET
\par > 1.1
\par > it may be workable. We do not have any control over the web services, they
\par > are private (U.S. Government) and can change with little notice. They will
\par > not be moving to MTOM attachments in the near future. Our dlls are
\par > incorporated in three complex applications (one web, one windows form and
\par > one windows service). At what point can the .NET 1.1 dlls be isolated from
\par > the rest of the application to make the web services interface run
\par > correctly; the custom security dlls, the proxies, the whole application
\par > (not
\par > acceptable), etc.?
\par >
\par > Just a note of frustrastion on my part - Why did Microsoft choose not to
\par > support DIME in WSE 3.0? Microsoft seems to believe that developers alway
\par > have control over both sides (server and client) of web services. This is
\par > not the case. To completely remove such functionality seems very short
\par > sighted and self-centered.Then, they only document how to move to WSE 3.0,
\par > they do not document how to smoothly integrate WSE 2.0 into the .NET 2.0
\par > and
\par > later environments. (There, thanks for letting me vent.)
\par >
\par > Rich F.
\par >
\par > "Steven Cheng [MSFT]" <stcheng@xxxxxxxxxxxxxxxxxxxx> wrote in message
\par > news:TBQd8nfnIHA.8872@xxxxxxxxxxxxxxxxxxxxxxxxx
\par >> Thanks for your reply Rich,
\par >>
\par >> So you've installed the Full WSE 2.0 SP3 runtime on the new dev box but
\par >> still got the exception at runtime when try running the project?
\par >>
\par >> The "schema validation error" just means the IDE can not find the
\par >> built-in
\par >> xml schema for the WSE 2 configurations, that doesn't quite matter for
\par >> runtime error. As you mentioned the custom security token, I would
\par >> suggest
\par >> you try starting from a very simple and typical WSE 2 application and
\par >> convert it to vs 2008 to see whether it can work correctly. If it works,
\par >> you can try adding more features into it to see at what point does it
\par >> break.
\par >>
\par >> BTW, will you need to uitlize .NET 3.5 or .NET 3.0 for the client
\par >> application using WSE 2 SP3? If not, I think you can consider keep it
\par >> under
\par >> VS 2003/.NET 1.1 since that's the natural platform for WSE 2.0 SP3. And
\par >> you
\par >> can install .NET framework 1.1 on the target box so that it can still
\par >> keep
\par >> running under .NET 1.1. How do you think?
\par >>
\par >> Sincerely,
\par >>
\par >> Steven Cheng
\par >>
\par >> Microsoft MSDN Online Support Lead
\par >>
\par >>
\par >> Delighting our customers is our #1 priority. We welcome your comments and
\par >> suggestions about how we can improve the support we provide to you.
\par >> Please
\par >> feel free to let my manager know what you think of the level of service
\par >> provided. You can send feedback directly to my manager at:
\par >> msdnmg@xxxxxxxxxxxxxx
\par >>
\par >> ==================================================
\par >> Get notification to my posts through email? Please refer to
\par >>
\par > http://msdn.microsoft.com/subscriptions/managednewsgroups/default.aspx#notif
\par >> ications.
\par >>
\par >> ==================================================
\par >> This posting is provided "AS IS" with no warranties, and confers no
\par >> rights.
\par >>
\par >> --------------------
\par >> From: "Rich Fowler" <RJF@xxxxxxxxxxxxxxxx>
\par >> References: <8B62735A-824A-404E-AAB0-86FE5BA1C028@xxxxxxxxxxxxx>
\par >> <6h5w5tumIHA.10116@xxxxxxxxxxxxxxxxxxxxxx>
\par >> In-Reply-To: <6h5w5tumIHA.10116@xxxxxxxxxxxxxxxxxxxxxx>
\par >> Subject: Re: DIME WSE 2.0 in .NET 2.0
\par >> Date: Thu, 10 Apr 2008 09:21:26 -0600
\par >>
\par >> Hi Steven,
\par >>
\par >> After installing the WSE 2.0 SP 3 runtime (full developer install), I
\par >> copied
\par >> the .NET 1.1 application over to the new development system and
\par >> everything
\par >> worked correctly (ie. WSE is installed correctly).
\par >>
\par >> I was able to get more information wrt the error message.
\par >>
\par >> InnerException \{"An error occurred creating the configuration section
\par >> handler for microsoft.web.services2:
\par >> The given assembly name or codebase was invalid. (Exception from HRESULT:
\par >> 0x80131047)
\par >>
\par > (D:\\\\Form990Development\\\\Form990DevelopmentSoftware\\\\FedStateBackend\\\\bin\\\\D
\par >> ebug\\\\FedStateBackend.vshost.exe.Config
\par >> line 14)"\}
\par >> System.Exception \{System.Configuration.ConfigurationErrorsException\}
\par >>
\par >> Part of the stack trace:
\par >>
\par >> at
\par >>
\par > Microsoft.Web.Services2.Configuration.WebServicesConfiguration.Initialize()
\par >> at
\par >>
\par > Microsoft.Web.Services2.Configuration.WebServicesConfiguration.get_ReferralC
\par >> onfiguration()
\par >> at Microsoft.Web.Services2.Referral.ReferralCache.Initialize()
\par >> at Microsoft.Web.Services2.Referral.ReferralCache.ResolvePath(Uri uri)
\par >> at
\par >>
\par > Microsoft.Web.Services2.WebServicesClientProtocol.set_Destination(EndpointRe
\par >> ference
\par >> value)
\par >> at Microsoft.Web.Services2.WebServicesClientProtocol.set_Url(String
\par >> value)
\par >> IRSProxies40.LoginService.LoginClass..ctor() in
\par >>
\par > D:\\\\Form990Development\\\\Form990DevelopmentSoftware\\\\IRSProxies40\\\\LoginServi
\par >> ce.cs:line
\par >> 265
\par >> ...
\par >>
\par >> Line 14 is the start of the microsoft.web.services2 section. This error
\par >> happens when creating an instance of the proxy. If I comment out the
\par >> security section containing my custom SAML token managers, I get beyound
\par >> this point in the code. Here's the security section:
\par >>
\par >> <security>
\par >> <securityTokenManager type="IRSSaml.SamlTokenManager, IRSSaml"
\par >> xmlns:saml="urn:oasis:names:tc:SAML:1.0:assertion" qname="saml:Assertion"
\par >> />
\par >> <securityTokenManager type="IRSSaml.UserTokenManager, IRSSaml,
\par >> DATWebService"
\par >>
\par >>
\par > xmlns:wsse="http://docs.oasis-open.org/wss/2004/01/oasis-200401-wss-wssecuri
\par >> ty-secext-1.0.xsd"
\par >> qname="wsse:UsernameToken" />
\par >> </security>
\par >>
\par >> The IRSSam dll is targeted to .NET 3.5. Does this dll need to be .NET 1.1
\par >> (this is just a guess).
\par >>
\par >> Thanks - Rich F.
\par >>
\par >>
\par >> "Steven Cheng [MSFT]" <stcheng@xxxxxxxxxxxxxxxxxxxx> wrote in message
\par >> news:6h5w5tumIHA.10116@xxxxxxxxxxxxxxxxxxxxxxxxx
\par >>> Hi Rich,
\par >>>
\par >>> From your description, you have a WSE 2.0 webservice client used in a
\par >>> converted VS 2008 .NET 3.5 project(winform). When you try running the
\par >>> application, it report an exception indicate that the configuration can
\par >>> not
\par >>> be loaded, correct?
\par >>>
\par >>> Since the error indicate the configuration section can not be loaded. I
\par >>> would suggest you first check whether WSE 2.0 runtime assmblies has been
\par >>> correcctly installed into the GAC. When .net try parsing a custom
\par >>> section,
\par >>> it will first request the certain custom section type from the
\par >>> assemblies
\par >>> specified in configuration.
\par >>>
\par >>> You can also try creating a very simple WSE 2.0 client application (in
\par >>> vs
\par >>> 2003) and convert it to VS 2008 and run it to see whether it can run
\par >>> correctly. If that also fails, there must be something incorrect with
\par >>> the
\par >>> WSE runtime. Otherwise, we may focus on the specific WSE client project.
\par >>>
\par >>> Sincerely,
\par >>>
\par >>> Steven Cheng
\par >>>
\par >>> Microsoft MSDN Online Support Lead
\par >>>
\par >>>
\par >>> Delighting our customers is our #1 priority. We welcome your comments
\par >>> and
\par >>> suggestions about how we can improve the support we provide to you.
\par >>> Please
\par >>> feel free to let my manager know what you think of the level of service
\par >>> provided. You can send feedback directly to my manager at:
\par >>> msdnmg@xxxxxxxxxxxxxx
\par >>>
\par >>> ==================================================
\par >>> Get notification to my posts through email? Please refer to
\par >>>
\par >>
\par > http://msdn.microsoft.com/subscriptions/managednewsgroups/default.aspx#notif
\par >>> ications.
\par >>>
\par >>> Note: The MSDN Managed Newsgroup support offering is for non-urgent
\par >>> issues
\par >>> where an initial response from the community or a Microsoft Support
\par >>> Engineer within 1 business day is acceptable. Please note that each
\par >>> follow
\par >>> up response may take approximately 2 business days as the support
\par >>> professional working with you may need further investigation to reach
\par >>> the
\par >>> most efficient resolution. The offering is not appropriate for
\par >>> situations
\par >>> that require urgent, real-time or phone-based interactions or complex
\par >>> project analysis and dump analysis issues. Issues of this nature are
\par >>> best
\par >>> handled working with a dedicated Microsoft Support Engineer by
\par >>> contacting
\par >>> Microsoft Customer Support Services (CSS) at
\par >>> http://msdn.microsoft.com/subscriptions/support/default.aspx.
\par >>> ==================================================
\par >>> This posting is provided "AS IS" with no warranties, and confers no
\par >>> rights.
\par >>>
\par >>> --------------------
\par >>> From: "Rich Fowler" <RJF@xxxxxxxxxxxxxxxx>
\par >>> Subject: DIME WSE 2.0 in .NET 2.0
\par >>> Date: Wed, 9 Apr 2008 14:48:36 -0600
\par >>>
\par >>>
\par >>> I know this is an old question but I cannot find any of the previous
\par >>> posting
\par >>> wrt this issue.
\par >>>
\par >>> We are finally upgrading to VS 2008 and .NET 3.5 from VS 2003 and .NET
\par >>> 1.1.
\par >>> We have Windows forms, ASP.Net code and Windows services that interface
\par >>> with
\par >>> 3rd party web services that require the DIME attachments. We developed
\par >>> libraries that are used in all three environments. The proxies are all
\par >>> setup
\par >>> to use WSE 2.0 SP3. I also have the configuration settings from the .NET
\par >>> 1.1
\par >>> implementation.
\par >>>
\par >>> I'm getting the
\par >>>
\par >>> WSE032: There was an error loading the microsoft.web.services2
\par >>> configuration
\par >>> section.
\par >>>
\par >>> error in the Windows forms application.
\par >>>
\par >>> I know it is stated that .NET 2.0 supports WSE 2.0 SP3 and that VS 2008
\par >>> does
\par >>> not provide the interface that VS 2003 does. However, I cannot find any
\par >>> documentation on what is specifically necessary to implement WSE 2.0 SP3
\par >>> in
\par >>> NET 2.0. Or specifically what causes the above error.
\par >>>
\par >>> Thanks for your help - Rich F.
\par >>>
\par >>> Below are the relavent app.config sections:
\par >>> -------------------------------
\par >>> <configSections>
\par >>> <section name="microsoft.web.services2"
\par >>> type="Microsoft.Web.Services2.Configuration.WebServicesConfiguration,
\par >>> Microsoft.Web.Services2, Version=2.0.0.0, Culture=neutral,
\par >>> PublicKeyToken=31bf3856ad364e35" />
\par >>> </configSections>
\par >>>
\par >>> <microsoft.web.services2>
\par >>> <diagnostics>
\par >>> <trace enabled="true" input="Trace/Response.xml"
\par >>> output="Trace/Request.xml" />
\par >>> <detailedErrors enabled="true" />
\par >>> </diagnostics>
\par >>> <security>
\par >>> <securityTokenManager type="IRSSaml.SamlTokenManager, IRSSaml"
\par >>> xmlns:saml="urn:oasis:names:tc:SAML:1.0:assertion"
\par >>> qname="saml:Assertion"
\par >>> />
\par >>> <securityTokenManager type="IRSSaml.UserTokenManager, IRSSaml,
\par >>> DATWebService"
\par >>>
\par >>
\par > xmlns:wsse="http://docs.oasis-open.org/wss/2004/01/oasis-200401-wss-wssecuri
\par >>> ty-secext-1.0.xsd"
\par >>> qname="wsse:UsernameToken" />
\par >>> </security>
\par >>> <messaging>
\par >>> <executionTimeout value="300" />
\par >>> <maxRequestLength>-1</maxRequestLength>
\par >>> </messaging>
\par >>> </microsoft.web.services2>
\par >>> -----------------------------------
\par >>> Note: Same error if I change the version to 2.0.3.0.
\par >>>
\par >>> Below is sample code from the proxies:
\par >>> -----------------------------------
\par >>> /// <remarks/>
\par >>> [System.Diagnostics.DebuggerStepThroughAttribute()]
\par >>> [System.ComponentModel.DesignerCategoryAttribute("code")]
\par >>> [System.Web.Services.WebServiceBindingAttribute(Name="InitialLogin",
\par >>> Namespace="http://www.irs.gov/a2a/mef/MeFMSIServices")]
\par >>> public class InitialLoginClass :
\par >>> Microsoft.Web.Services2.WebServicesClientProtocol
\par >>> \{
\par >>>
\par >>> public MeFHeaderType MeF;
\par >>>
\par >>> /// <remarks/>
\par >>> public InitialLoginClass()
\par >>> \{
\par >>> this.Url = ConfigurationSettings.AppSettings.Get("WebServiceURL") +
\par >>> "/a2a/mef/InitialLogin";
\par >>> this.Timeout =
\par >>> int.Parse(ConfigurationSettings.AppSettings.Get("WebServiceTimeout"));
\par >>> \}
\par >>>
\par >>> /// <remarks/>
\par >>> [System.Web.Services.Protocols.SoapHeaderAttribute("MeF",
\par >>> Direction=System.Web.Services.Protocols.SoapHeaderDirection.InOut)]
\par >>>
\par >>>
\par >>
\par > [System.Web.Services.Protocols.SoapDocumentMethodAttribute("http://www.irs.g
\par >>> ov/a2a/mef/InitialLogin",
\par >>> Use=System.Web.Services.Description.SoapBindingUse.Literal,
\par >>> ParameterStyle=System.Web.Services.Protocols.SoapParameterStyle.Bare)]
\par >>> [return:
\par >>> System.Xml.Serialization.XmlElementAttribute("InitialLoginResponse",
\par >>> Namespace="http://www.irs.gov/a2a/mef/MeFMSIServices.xsd")]
\par >>> public InitialLoginResponseType
\par >>>
\par >>
\par > InitialLogin([System.Xml.Serialization.XmlElementAttribute(Namespace="http:/
\par >>> /www.irs.gov/a2a/mef/MeFMSIServices.xsd")]
\par >>> InitialLoginRequestType InitialLoginRequest)
\par >>> \{
\par >>> object[] results = this.Invoke("InitialLogin", new object[]
\par >>> \{InitialLoginRequest\});
\par >>> return ((InitialLoginResponseType)(results[0]));
\par >>> \}
\par >>>
\par >>> /// <remarks/>
\par >>> public System.IAsyncResult BeginInitialLogin(InitialLoginRequestType
\par >>> InitialLoginRequest, System.AsyncCallback callback, object asyncState)
\par >>> \{
\par >>> return this.BeginInvoke("InitialLogin", new object[]
\par >>> \{InitialLoginRequest\}, callback, asyncState);
\par >>> \}
\par >>>
\par >>> /// <remarks/>
\par >>> public InitialLoginResponseType EndInitialLogin(System.IAsyncResult
\par >>> asyncResult)
\par >>> \{
\par >>> object[] results = this.EndInvoke(asyncResult);
\par >>> return ((InitialLoginResponseType)(results[0]));
\par >>> \}
\par >>> \}
\par >>>
\par >>>
\par >>
\par >>
\par >
\par >
\par
\par \pard
\par
\par }
- Follow-Ups:
- Re: DIME WSE 2.0 in .NET 2.0
- From: Rich Fowler
- Re: DIME WSE 2.0 in .NET 2.0
- From: Rich Fowler
- Re: DIME WSE 2.0 in .NET 2.0
- References:
- DIME WSE 2.0 in .NET 2.0
- From: Rich Fowler
- RE: DIME WSE 2.0 in .NET 2.0
- From: Steven Cheng [MSFT]
- Re: DIME WSE 2.0 in .NET 2.0
- From: Rich Fowler
- Re: DIME WSE 2.0 in .NET 2.0
- From: Steven Cheng [MSFT]
- Re: DIME WSE 2.0 in .NET 2.0
- From: Rich Fowler
- Re: DIME WSE 2.0 in .NET 2.0
- From: Steven Cheng [MSFT]
- Re: DIME WSE 2.0 in .NET 2.0
- From: Rich Fowler
- DIME WSE 2.0 in .NET 2.0
- Prev by Date: Re: DIME WSE 2.0 in .NET 2.0
- Next by Date: Re: DIME WSE 2.0 in .NET 2.0
- Previous by thread: Re: DIME WSE 2.0 in .NET 2.0
- Next by thread: Re: DIME WSE 2.0 in .NET 2.0
- Index(es):
Relevant Pages
|