Develop Person Repository Class Based on Provided Interface
$30-250 USD
Completed
Posted almost 13 years ago
$30-250 USD
Paid on delivery
1) Develop Person Repository Class based on ‘IPersonRepository’ interface defined below using C# and .Net Framework 4.0
2) Class shall leverage WCF RIA services to asynchronously read/write data
3) WCF RIA services shall use Microsoft Entity Framework 4.0 to access ‘Person’ table in SQL Server database (which is provided as an attached file)
a. Want entity framework to return persistence ignorance objects (not derived from Entity Framework’s Entity Class)
4) Provide all source files and Visual Studio 2010 solution file
Deliverables and Criteria for Success:
1) Visual Studio 2010 solution file and all source files
a. Solution must compile in Visual Studio 2010
b. No third party libraries allowed
c. ALL source code must be provided
d. Class must implement requirements defined by interface in attached file
Interface mentioned above:
//Interface to provide a repository of 'People' objects
public interface IPersonRepository
{
/// Return an enumerable list of all people within the people table as 'People' objects
/// <param name="callback">Procedure to call when the people objects have been read. Procedure is passed
/// the enumerable list of people objects.</param>
/// <param name="userState">Arbitrary object to be passed to the callback function</param>
/// <returns>Reference to enumerable list of all people within the people table that will be loaded once the data is read.</returns>
/// <remarks>Calling 'GetAllPeopleAboveAge' should not cause this list to change.</remarks>
IEnumerable<Person> GetAllPeople(Action<IEnumerable<Person>> callback, object userState);
/// Return an enumerable list of all people above a specified age within the people table as 'People' objects
/// <param name="callback">Procedure to call when the people objects have been read. Procedure is passed
/// the enumerable list of people objects.</param>
/// <param name="userState">Arbitrary object to be passed to the callback function</param>
/// <returns>Reference to enumerable list of all people above a specified age within the people table that will be loaded once the data is read.</returns>
/// <remarks>Calling 'GetAllPeople' should not cause this list to change.</remarks>
IEnumerable<Person> GetAllPeopleAboveAge(int age, Action<IEnumerable<Person>> callback, object userState);
/// Add a person to the list of people.
/// <param name="person">Person to be added to the person list.</param>
/// <remarks>When a person is added that person should be seen in the enumerable list for 'GetAllPeople',
/// and in the enumerable list for 'GetAllPeopleAboveAge' if the person is above the specified age.</remarks>
void AddPerson(Person person);
/// Delete a person from the list of people.
/// <param name="person">Person to be deleted from the person list.</param>
/// <remarks>When a person is deleted that person should be deleted from the enumerable list for 'GetAllPeople',
/// and deleted from the enumerable list for 'GetAllPeopleAboveAge' if the person is above the specified age.</remarks>
void DeletePerson(Person person);
/// Submit all person objects that have been added, deleted, or updated.
/// <param name="callback">Procedure to be called when the changes have been submitted. An exception
/// object should be provided to the callback function which is null if there are no errors or returns the
/// exception returned if there is an exception.</param>
/// <param name="userState">Arbitrary object to be passed to the callback function</param>
void SubmitChanges(Action<Exception> callback, object userState);
}
i am good in wcf services. i have total of 6 years of dotnet experience with all frameworks. I have recently made json enabled services also which are used by dotnet as well as android applications.I can do work parttime (means max 4 hours/day), that is the reason i said 4 days to complete this project.