<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.0 Transitional//EN">
<HTML><HEAD>
<META http-equiv=Content-Type content="text/html; charset=us-ascii">
<META content="MSHTML 6.00.6000.16414" name=GENERATOR></HEAD>
<BODY>
<DIV dir=ltr align=left><SPAN class=453424014-31082007><FONT face=Arial 
color=#0000ff size=2>Hi John,</FONT></SPAN></DIV>
<DIV dir=ltr align=left><SPAN class=453424014-31082007><FONT face=Arial 
color=#0000ff size=2></FONT></SPAN>&nbsp;</DIV>
<DIV dir=ltr align=left><SPAN class=453424014-31082007><FONT face=Arial 
color=#0000ff size=2>This is now "fixed" in SVN (with matching unit 
tests).</FONT></SPAN></DIV>
<DIV>&nbsp;</DIV>
<DIV><SPAN class=453424014-31082007></SPAN><FONT face=Arial><FONT 
color=#0000ff><FONT size=2>G<SPAN 
class=453424014-31082007>ert</SPAN></FONT></FONT></FONT><BR></DIV>
<DIV class=OutlookMessageHeader lang=en-us dir=ltr align=left>
<HR tabIndex=-1>
<FONT face=Tahoma size=2><B>From:</B> mono-devel-list-bounces@lists.ximian.com 
[mailto:mono-devel-list-bounces@lists.ximian.com] <B>On Behalf Of </B>John 
Anderson<BR><B>Sent:</B> vrijdag 31 augustus 2007 10:19<BR><B>To:</B> Atsushi 
Eno<BR><B>Cc:</B> mono-devel<BR><B>Subject:</B> Re: [Mono-dev] [PATCH] 
System.Configuration.Provider.ProviderBase.cs<BR></FONT><BR></DIV>
<DIV></DIV>On 8/31/07, <B class=gmail_sendername>Atsushi Eno</B> &lt;<A 
href="mailto:atsushi@ximian.com">atsushi@ximian.com</A>&gt; wrote:
<DIV><SPAN class=gmail_quote></SPAN>
<BLOCKQUOTE class=gmail_quote 
style="PADDING-LEFT: 1ex; MARGIN: 0pt 0pt 0pt 0.8ex; BORDER-LEFT: rgb(204,204,204) 1px solid">Your 
  code does not verify that your change must be correct. It<BR>just shows the 
  fact that it *affects* on our <A href="http://ASP.NET">ASP.NET</A> 
  behavior<BR>(Or is that a general way for .NET developers to identify the 
  <BR>source of bugs?).&nbsp;&nbsp;What I expected was rather like 
  below:<BR><BR>using System;<BR>using System.Collections.Specialized;<BR>using 
  System.Configuration.Provider;<BR><BR>public class MyProvider : 
  ProviderBase<BR>{<BR>&nbsp;&nbsp;&nbsp;&nbsp; public static void Main () 
  <BR>&nbsp;&nbsp;&nbsp;&nbsp; 
  {<BR>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; NameValueCollection 
  config = new NameValueCollection 
  ();<BR>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; config ["name"] = 
  "Name";<BR>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; config 
  ["description"] = "DESC";<BR>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; 
  config ["foo"] = "FOO"; <BR>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; 
  Console.WriteLine (config 
  ["description"]);<BR>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; 
  MyProvider p = new MyProvider 
  ();<BR>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; p.Initialize ("Foo", 
  config);<BR>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; Console.WriteLine 
  (config ["name"]); <BR>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; 
  Console.WriteLine (config 
  ["description"]);<BR>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; 
  Console.WriteLine (config 
  ["foo"]);<BR>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; 
  Console.WriteLine ("{0} {1}", p.Name, 
  p.Description);<BR>&nbsp;&nbsp;&nbsp;&nbsp; }<BR>}<BR><BR>Yes, you were right, 
  this test shows how funny behavior .net does.</BLOCKQUOTE>
<DIV><BR>Sorry about my test, Yours is much better.&nbsp; But as you can see 
with your test, on <A href="http://MS.NET">MS.NET</A><BR>it removes the 
description config.&nbsp; This is a pretty well known behavior of the provider, 
I've seen <BR>many code examples of custom providers where they check config 
after running base initialize to check<BR>if any unknown attributes were defined 
in the config. <BR><BR>Thanks<BR></DIV></DIV></BODY></HTML>