Using the Artist-Album BOs in the Audit Demo, how would you create the Business Objects programatically at runtime?
For example, if you create 2 Artists "Jimi Hendrix" and "John Lennon" and they are created with GUID OIDs, how would you use either or both artist to create test/sample Albums using Hendrix or Lennon as the Artists?
Below is the BO class.
namespace AuditDemo.Module {
[DefaultClassOptions]
public class Album : BaseObject {
public Album(Session session) : base(session) { }
private string name;
public string Name {
get {
return name;
}
set {
SetPropertyValue("Name", ref name, value);
}
}
private int year;
public int Year {
get {
return year;
}
set {
SetPropertyValue("Year", ref year, value);
}
}
private Artist artist;
[Association("Artist-Albums")]
public Artist Artist {
get {
return artist;
}
set {
SetPropertyValue("Artist", ref artist, value);
}
}
private XPCollection<AuditDataItemPersistent> auditTrail;
public XPCollection<AuditDataItemPersistent> AuditTrail {
get {
if(auditTrail == null) {
auditTrail = AuditedObjectWeakReference.GetAuditTrail(Session, this);
}
return auditTrail;
}
}
}
[DefaultClassOptions]
public class Artist : BaseObject {
public Artist(Session session) : base(session) { }
private string name;
public string Name {
get {
return name;
}
set {
SetPropertyValue("Name", ref name, value);
}
}
[Association("Artist-Albums")]
public XPCollection<Album> Albums {
get {
return GetCollection<Album>("Albums");
}
}
private XPCollection<AuditDataItemPersistent> auditTrail;
public XPCollection<AuditDataItemPersistent> AuditTrail {
get {
if(auditTrail == null) {
auditTrail = AuditedObjectWeakReference.GetAuditTrail(Session, this);
}
return auditTrail;
}
}
}
}
Thanks in advance,
Trey