- GenericWcfWithPocos.zip
- GenericWcfWithPocos
- CodeGeneration
- EdmxLibrary
- Templates
- GenericWcfWithPocos.sln
- GenericWcfWithPocos.suo
- GenericWcfWithPocos.vsmdi
- Library
- AutoMapper.dll
- Local.testsettings
- Source Code
- Common
- AdventureWorks.Interface
- AdventureWorksModel
- SearchHelpers
- Server
- AdventureWorksEntityModel
- AdventureWorksService
- ServerRepository
- Tests
- EntityServiceTests
- TraceAndTestImpact.testsettings
|
using System;
using System.Collections.Generic;
using System.Data.Objects;
using System.Linq;
using System.Runtime.Serialization;
using EntityModel = AdventureWorksEntityModel;
namespace AdventureWorksModel
{
[DataContract(IsReference = true)]
public partial class PurchaseOrderDetail : PocoBase, IExtensibleDataObject
{
// Class Name
public const string PURCHASE_ORDER_DETAIL = "PurchaseOrderDetail";
// Property Names
public const string PURCHASE_ORDER_DETAIL_ID = "PurchaseOrderDetailID";
public const string PURCHASE_ORDER_ID = "PurchaseOrderID";
public const string DUE_DATE = "DueDate";
public const string LINE_TOTAL = "LineTotal";
public const string MODIFIED_DATE = "ModifiedDate";
public const string ORDER_QTY = "OrderQty";
public const string RECEIVED_QTY = "ReceivedQty";
public const string REJECTED_QTY = "RejectedQty";
public const string STOCKED_QTY = "StockedQty";
public const string UNIT_PRICE = "UnitPrice";
// Data Members - Keys
[DataMember(EmitDefaultValue = false)] public Int32 PurchaseOrderDetailID { get; private set; }
[DataMember(EmitDefaultValue = false)] public Int32 PurchaseOrderID { get; private set; }
// Data Members
[DataMember(EmitDefaultValue = false)] public DateTime DueDate { get; set; }
[DataMember(EmitDefaultValue = false)] public Decimal LineTotal { get; set; }
[DataMember(EmitDefaultValue = false)] public DateTime ModifiedDate { get; set; }
[DataMember(EmitDefaultValue = false)] public Int16 OrderQty { get; set; }
[DataMember(EmitDefaultValue = false)] public Decimal ReceivedQty { get; set; }
[DataMember(EmitDefaultValue = false)] public Decimal RejectedQty { get; set; }
[DataMember(EmitDefaultValue = false)] public Decimal StockedQty { get; set; }
[DataMember(EmitDefaultValue = false)] public Decimal UnitPrice { get; set; }
// Reference (FK) to other Table (PK)
[DataMember(EmitDefaultValue = false)] public Product Product { get; set; }
[DataMember(EmitDefaultValue = false)] public PocoReference<Product> ProductReference { get; set; }
[DataMember(EmitDefaultValue = false)] public PurchaseOrderHeader PurchaseOrderHeader { get; set; }
[DataMember(EmitDefaultValue = false)] public PocoReference<PurchaseOrderHeader> PurchaseOrderHeaderReference { get; set; }
public ExtensionDataObject ExtensionData { get; set; }
//
// Public Class Methods
//
public override IList<KeyValuePair<string, object>> GetKeys()
{
return new List<KeyValuePair<string, object>>
{
new KeyValuePair<string, object>(PURCHASE_ORDER_DETAIL_ID, PurchaseOrderDetailID),
new KeyValuePair<string, object>(PURCHASE_ORDER_ID, PurchaseOrderID)
};
}
public PocoReference<PurchaseOrderDetail> GetReference()
{
PocoReference<PurchaseOrderDetail> reference = GetReference(PurchaseOrderDetailID, PurchaseOrderID);
reference.PocoKey.ID = ObjectID;
return reference;
}
public static PocoReference<PurchaseOrderDetail> GetReference(Int32 purchaseOrderDetailID, Int32 purchaseOrderID)
{
List<KeyValuePair<string, object>> pairs = new List<KeyValuePair<string, object>>
{
new KeyValuePair<string, object>(PURCHASE_ORDER_DETAIL_ID, purchaseOrderDetailID),
new KeyValuePair<string, object>(PURCHASE_ORDER_ID, purchaseOrderID)
};
return GetReference(new PocoKey { Name = PURCHASE_ORDER_DETAIL, KeyValues = pairs });
}
private static PocoReference<PurchaseOrderDetail> GetReference(PocoKey pocoKey)
{
return new PocoReference<PurchaseOrderDetail>
{
PocoKey = pocoKey
};
}
//
// Repository Calls
//
public override string EntitySetName()
{
return Repository.EntitySetName<PurchaseOrderDetail, EntityModel.PurchaseOrderDetail>(false);
}
public override IQueryable<PocoBase> Find()
{
return Repository.Find<PurchaseOrderDetail, EntityModel.PurchaseOrderDetail>(SearchOptions, MergeOption.NoTracking).Cast<PocoBase>();
}
public override PocoKey Add()
{
PocoKey key = Repository.Add<PurchaseOrderDetail, EntityModel.PurchaseOrderDetail>(this);
PocoReference<PurchaseOrderDetail> reference = GetReference(key);
PurchaseOrderDetailID = (Int32)key.KeyValues.FirstOrDefault(k=> k.Key.Equals(PURCHASE_ORDER_DETAIL_ID)).Value;
PurchaseOrderID = (Int32)key.KeyValues.FirstOrDefault(k=> k.Key.Equals(PURCHASE_ORDER_ID)).Value;
return key;
}
public override void Update()
{
Repository.Update<PurchaseOrderDetail, EntityModel.PurchaseOrderDetail>(this);
}
public override void Delete()
{
Repository.Delete<PurchaseOrderDetail, EntityModel.PurchaseOrderDetail>(this);
}
}
}
|
By viewing downloads associated with this article you agree to the Terms of Service and the article's licence.
If a file you wish to view isn't highlighted, and is a text file (not binary), please
let us know and we'll add colourisation support for it.
Dave is an independent consultant working in a variety of industries utilizing Microsoft .NET technologies.