偶数.... MVCのC#を飛ばしている自動カウントは私が私の見解では、コードを持っている私の見解では
ビュー:
<div id="batch_payments">
@foreach (var batchPayment in Model.BatchPayments)
{
if(batchPayment.CustomerIdEntered != null)
{
Html.RenderPartial("BatchPaymentAdd", batchPayment);
}
}
</div>
部分図:
<span class="batch_payment_index white">@String.Format("{0}.", Model.BatchPaymentIndex)</span>
モデル:
public class BatchPaymentViewModel : BaseViewModel
{
public int BatchPaymentId { get; set; }
public string BatchTypeId { get; set; }
public int BatchPaymentIndex { get; set; }
public decimal? Amount { get; set; }
public string CustomerIdEntered { get; set; }
public string RoutingNumber { get; set; }
public string AccountNumber { get; set; }
public string CheckNumber { get; set; }
public string CreditCardNumber { get; set; }
public string ReceiptNumber { get; set; }
public ICollection<BatchPaymentSplitViewModel> PaymentSplits { get; set; }
private bool _isBatchEditable;
public bool IsBatchEditable { get {return _isBatchEditable; } set { UpdateIsBatchEditable(value); } }
public bool IsThisEditable { get; set; }
public string Status { get; set; }
public BatchPaymentViewModel()
{
PaymentSplits = new List<BatchPaymentSplitViewModel>();
PaymentSplits.Add(new BatchPaymentSplitViewModel());
BatchPaymentIndex = 0;
IsBatchEditable = true;
IsThisEditable = true;
Status = "Unknown";
}
public BatchPaymentViewModel(int index)
{
PaymentSplits = new List<BatchPaymentSplitViewModel>();
PaymentSplits.Add(new BatchPaymentSplitViewModel());
BatchPaymentIndex = index;
IsBatchEditable = true;
IsThisEditable = true;
Status = "Unknown";
}
public BatchPaymentViewModel(BatchPayment batchPayment, int index = 0)
{
BatchPaymentId = batchPayment.BatchPaymentId;
BatchTypeId = batchPayment.Batch.BatchTypeId;
BatchPaymentIndex = index;
Amount = batchPayment.BatchPaymentSplits.Select(i => i.Amount).First();
CustomerIdEntered = batchPayment.BatchPaymentSplits.Select(i => i.CustomerIdEntered).First();
RoutingNumber = batchPayment.RoutingNumber;
AccountNumber = batchPayment.AccountNumber;
CheckNumber = batchPayment.CheckNumber;
CreditCardNumber = batchPayment.CreditCardNumber;
ReceiptNumber = batchPayment.UniqueId;
Status = batchPayment.BatchPaymentStatus.Text;
PaymentSplits = new List<BatchPaymentSplitViewModel>();
foreach (var split in batchPayment.BatchPaymentSplits.OrderBy(bp => bp.BatchPaymentId))
{
PaymentSplits.Add(new BatchPaymentSplitViewModel(split));
}
if (PaymentSplits.Count == 0)
{
PaymentSplits.Add(new BatchPaymentSplitViewModel());
}
IsBatchEditable = batchPayment.Batch.IsEditable;
IsThisEditable = batchPayment.IsEditable;
}
これは私のビューに表示されている行に数値を追加することです。しかし、私はいくつかの行が隠されています。これらの数値はまだカウントされているので、私の行は1,3,5,7などと表示されます。
編集:私のビューでIf文を削除すると、正しくカウントされます。それではまだ適用されていない行を数えています。
がどのように私はこのコードは非表示の行を無視してカウントするのですか1,2,3,4などすべてのコードがModel.BatchPaymentIndex
に何が保存されていると表示されるん
オブジェクトにブーリアンIsHiddenを追加できましたか?次に、隠されていないアイテムを取得しますか? –
このコード行を囲むコードを追加してください。ループのように。 – DarkKnight
ここで 'Model.BatchPaymentIndex'をインクリメントしていますか? –