Here is the VB.Net and C# Code for Creating Your Own Business Objects

Here is the VB.Net and C# Code for Creating Your Own Business Objects

Old forum URL: forums.lhotka.net/forums/t/1838.aspx


Blarm posted on Monday, November 27, 2006

VB.Net:

<Serializable()> _
Public MustInherit Class MyBOBusinessBase(Of T As MyBOBusinessBase(Of T))
    Inherits Csla.BusinessBase(Of T)
End Class

<Serializable()> _
Public MustInherit Class MyBOBusinessListBase(Of T As MyBOBusinessListBase(Of T, C), C As Csla.Core.IEditableBusinessObject)
    Inherits Csla.BusinessListBase(Of T, C)
End Class

<Serializable()> _
Public MustInherit Class MyBOCommandBase
    Inherits Csla.CommandBase
End Class

<Serializable()> _
Public MustInherit Class MyBONameValueListBase(Of K, V)
    Inherits Csla.NameValueListBase(Of K, V)
End Class

<Serializable()> _
Public MustInherit Class MyBOReadOnlyBase(Of T As MyBOReadOnlyBase(Of T))
    Inherits Csla.ReadOnlyBase(Of T)
End Class

<Serializable()> _
Public MustInherit Class MyBOReadOnlyListBase(Of T As MyBOReadOnlyListBase(Of T, C), C As Csla.Core.IReadOnlyObject)
    Inherits Csla.ReadOnlyListBase(Of T, C)
End Class

<Serializable()> _
Public MustInherit Class MyBOEditableRootListBase(Of T As {Csla.Core.IEditableBusinessObject, Csla.Core.ISavable})
    Inherits Csla.EditableRootListBase(Of T)
End Class

 

C#:

[Serializable()]
public abstract class MyBOBusinessBase<T> : Csla.BusinessBase<T> where T : MyBOBusinessBase<T>
{
}

[Serializable()]
public abstract class MyBOBusinessListBase<T, C> : Csla.BusinessListBase<T, C> where T : MyBOBusinessListBase<T, C> where C : Csla.Core.IEditableBusinessObject
{
}

[Serializable()]
public abstract class MyBOCommandBase : Csla.CommandBase
{
}

[Serializable()]
public abstract class MyBONameValueListBase<K, V> : Csla.NameValueListBase<K, V>
{
}

[Serializable()]
public abstract class MyBOReadOnlyBase<T> : Csla.ReadOnlyBase<T> where T : MyBOReadOnlyBase<T>
{
}

[Serializable()]
public abstract class MyBOReadOnlyListBase<T, C> : Csla.ReadOnlyListBase<T, C> where T : MyBOReadOnlyListBase<T, C> where C : Csla.Core.IReadOnlyObject
{
}

[Serializable()]
public abstract class MyBOEditableRootListBase<T> : Csla.EditableRootListBase<T> where T : Csla.Core.IEditableBusinessObject, Csla.Core.ISavable
{
}

Just wanted to get them all in one place for easy access.

Thanks to everyone who has contributed on other posts.

david.wendelken replied on Tuesday, December 05, 2006

Thank you very much!  You just saved me hours of work!

Copyright (c) Marimer LLC