Таблицы поиска MVC

#asp.net-mvc

#asp.net-mvc

Вопрос:

Привет, у меня в моем приложении MVC есть таблица налоговых ставок. Он не имеет внешних ключевых связей ни с какими другими таблицами.

Тогда у меня есть счет-фактура класса модели:

 using System;
using System.Collections.Generic;
using System.Linq;
using System.Web;
using System.Web.Mvc;
using System.ComponentModel.DataAnnotations;

namespace VectorCheck.Models
{
    public class Invoice : IEntity, IValidatableObject
    {
        public virtual int InvoiceId { get; set; }

        public decimal PayableAmount
        {
           get
           {
               var taxrates = new Repository<TaxRate>();
               var taxrate = taxrates.Where(.....some condition.....);
               return AQuantityOfMoney * taxrate;
            }
        }
     }
}
  

Итак, проблема, которую я вижу здесь, заключается в том, что мне нужно создать экземпляр моего источника данных внутри моей модели. Не очень хорошо?

Кто-нибудь может сказать мне лучший способ подойти к решению этой проблемы?

Ответ №1:

Вы можете преобразовать PayableAmount свойство в метод и передать репозиторий в качестве параметра:

 public decimal GetPayableAmount(ITaxRateCalculator taxrates)
{
    var taxrate = taxrates.Where(.....some condition.....);
    return AQuantityOfMoney * taxrate;
}