Stephane,
Put public methods/properties in your base DataClass that you call from your sub-classed DataSets. Something like this:
public interface IDataSet
{
void FillWithXml(string XML);
}
public class XmlConverter
{
public void ImportXml(DataSet Data, string XML)
{
StringReader sr = new StringReader(XML);
Data.ReadXml(sr, XmlReadMode.InferSchema);
Data.AcceptChanges();
}
}
Then in your sub-classed DataSets:
public class Ar_CustMaster_DataSet : Ar_CustMaster, IMyDataSet
{
private MyBaseDataClass.XmlConverter Converter = new MyBaseDataClass.XmlConverter();
public void FillWithXML(string XML)
{
this.Converter.ImportXML(this, XML);
}
}
~~Bonnie
>Thanks Bonnie,
>
>That's what i did but the problem with interface is i have to cut & paste the implementaion code to all my derived dataSets since the code is the same for all. It would be much easier to simple derive from a base class containing all the common code. Looks like nothing is easy in .NET!!
>
>
>>Stephane,
>>
>>You don't want to mess with the generated code. I recommend using an Interface and then create a sub-class from your typed DataSet. Something like this:
>>
>>public interface IMyDataSet
>>{
>> void MyDataSetMethod();
>>}
>>public class Ar_CustMaster_DataSet : Ar_CustMaster, IMyDataSet
>>{
>> public void MyDataSetMethod()
>> {
>> // whatever code
>> }
>>}
>>
>>
>>~~Bonnie
>>
>>
>>>I am trying to figure out how i can make the generated typed datasets from VS 2003 us my dataSet base class instead of the Syste,.Data.DataSet base class.
>>>
>>>The genarated code produce this:
>>>
>>> public class AR_CustMaster : DataSet {}
>>>
>>>
>>>I need the dataset generator to produce this:
>>>
>>> public class AR_CustMaster : MyDataSet {}
>>>
>>>
>>>I know i can go in the generated .cs file and manually change it but as soon as the dataset is regenerated, my changes are lost.
>>>
>>>Is there any way to make the change permanent ?
>>>
>>>Thanks.