В нашем решении мы имеем бизнес-объекты, как это:Как использовать структуру сущностей с бизнес-объектами
[Serializable()]
public class Vendor : Recordable
{
protected int vendorID;
protected string vendorName;
protected string vendorNumber;
public void Save()
{
//call to sql stored procedure using ado.net to save
dbhelper.addSPParam("name",vendorName);
dbhelper.addSPParam("number",vendorNumber);
dbhelper.addSPParam("id",vendorID);
dbhelper.executeSP("sp_name");
}
Vendor(int id)
{
//call stored procedure to get vendor data by ID
this.vendorID = reader["vendorID"];
this.vendorName = reader["vendorName"];
this.vendorNumber = reader["vendorNumber"];
}
Наш код привязан к ADO.NET, но мы хотели бы использовать рамки сущности для запроса вместо записывая все вручную. Мы хотели бы сохранить некоторые хранимые процедуры, потому что в них есть бизнес-логика, но большинство вызовов хранимых процедур мы хотели бы использовать вместо этого.
Как мы можем сформировать наш проект для использования сущности framework, некоторых хранимых процедур и добавления модульных тестов (ни один из наших тестов не проверен)?
Любить любые идеи.
Ничего себе, это довольно широкий вопрос. Во-первых, эти классы вообще не являются платформой Entity Framework; Entity Framework использует свойства классов моделей, а не поля, и не использует функции для связанных объектов. Кроме того, Entity Framework обрабатывает Save, он не передает его объекту. Было бы непросто создать классы для сущностной структуры, которые будут схожи с этим, но изменение этих классов будет практически таким же, как создание новых классов. – Claies
Это довольно широкий вопрос, но, учитывая ситуацию, в которой вы находитесь, я бы сказал, начните с нуля. Если ваш текущий код не протестирован, его также, вероятно, очень сложно проверить. –
Ужасный код. Это не бизнес-объект, это DAO. Я поддерживаю предложение «начать с нуля». Также прочитайте немного о принципах SOLID. – MikeSW