ЕДИНИЦАC#

Место общения программистов C#
Ответить Пред. темаСлед. тема
Гость
 ЕДИНИЦА

Сообщение Гость »

Я знаю, что есть несколько вопросов, аналогичных моему. Проект WebAPI и его разделение между WebAPI и технологией DataCcess. У меня нет проблемного тестирования контроллера WebAPI, так как я могу издеваться над классом доступа к данным. Поскольку я использую Dapper с встроенными запросами в нем, я немного смущен тем, как проверить его, используя модульный тест. Я спросил некоторых из моих друзей, и они предпочитают провести интеграционный тест вместо модульного теста.public abstract class Repository : SyncTwoWayXI, IRepository where T : IDatabaseTable
{
public virtual IResult GetItem(String accountName, long id)
{
if (id p.CustomAttributes.All(a => a.AttributeType != typeof(SqlMapperExtensions.DapperIgnore))).Select(p => p.Name)));
builder.From(typeof(T).Name);
builder.Where("id = @id", new { id });
builder.Where("accountID = @accountID", new { accountID = accountName });
builder.Where("state != 'DELETED'");

var result = new Result();
var queryResult = sqlConn.Query(query.RawSql, query.Parameters);

if (queryResult == null || !queryResult.Any())
{
result.Message = "No Data Found";
return result;
}

result = new Result(queryResult.ElementAt(0));
return result;
}

// Code for Create, Update and Delete
}
< /code>
и реализация для вышеупомянутого кода похожа на < /p>
public class ProductIndex: IDatabaseTable
{
[SqlMapperExtensions.DapperKey]
public Int64 id { get; set; }

public string accountID { get; set; }
public string userID { get; set; }
public string deviceID { get; set; }
public string deviceName { get; set; }
public Int64 transactionID { get; set; }
public string state { get; set; }
public DateTime lastUpdated { get; set; }
public string code { get; set; }
public string description { get; set; }
public float rate { get; set; }
public string taxable { get; set; }
public float cost { get; set; }
public string category { get; set; }
public int? type { get; set; }
}

public class ProductsRepository : Repository
{
// ..override Create, Update, Delete method
}


Подробнее здесь: https://stackoverflow.com/questions/304 ... ne-queries
Реклама
Ответить Пред. темаСлед. тема

Быстрый ответ

Изменение регистра текста: 
Смайлики
:) :( :oops: :roll: :wink: :muza: :clever: :sorry: :angel: :read: *x)
Ещё смайлики…
   
К этому ответу прикреплено по крайней мере одно вложение.

Если вы не хотите добавлять вложения, оставьте поля пустыми.

Максимально разрешённый размер вложения: 15 МБ.

  • Похожие темы
    Ответы
    Просмотры
    Последнее сообщение

Вернуться в «C#»