2004-01-07 Atsushi Enomoto <atsushi@ximian.com>
[mono.git] / mcs / class / System.XML / System.Xml / XmlEntityReference.cs
index b0b4aae79c92e56cdb7fe29d9172a6bc0851a577..dd46e1942d48307704e29975585228fe8c60767c 100644 (file)
@@ -18,13 +18,12 @@ namespace System.Xml
                protected internal XmlEntityReference (string name, XmlDocument doc)\r
                        : base (doc)\r
                {\r
-                       entityName = name;\r
+                       entityName = doc.NameTable.Add (name);\r
                }\r
 \r
                // Properties\r
-               [MonoTODO]\r
                public override string BaseURI {\r
-                       get { return null; }\r
+                       get { return base.BaseURI; }\r
                }\r
 \r
                public override bool IsReadOnly {\r
@@ -45,6 +44,9 @@ namespace System.Xml
 \r
                public override string Value {\r
                        get { return null; } // always return null here.\r
+                       set {\r
+                               throw new XmlException ("entity reference cannot be set value.");\r
+                       }\r
                }\r
 \r
                // Methods\r
@@ -57,14 +59,16 @@ namespace System.Xml
                        return new XmlEntityReference ("", OwnerDocument);\r
                }\r
 \r
-               [MonoTODO]\r
                public override void WriteContentTo (XmlWriter w)\r
                {\r
+                       // nothing to write for this object.\r
                }\r
 \r
-               [MonoTODO]\r
                public override void WriteTo (XmlWriter w)\r
                {\r
+                       w.WriteRaw("&");\r
+                       w.WriteName(Name);\r
+                       w.WriteRaw(";");\r
                }\r
        }\r
 }\r