avatar
sinaee

کاربر

  • 1400/11/16
  • 0
  • 142
1400/11/16 |
backend

در asp.net coreمحاسبات ریاضی بر روی مقادیر وب سایت را چگونه و کجا باید اعمال کنیم؟

با سلام

من یک صفحه در قسمت ادمین دارم که تمامی قیمت محصولات را نشان می دهد.یک button دارم که قصد دارم بازدن آن قیمت تمامی محصولات در هربار کلیک ۱۰ درصد افزایش یابد .چطور باید بعد از  کلیک کردن اینکار را انجام دهم؟

اگر باید یک تابع داشته باشم که محاسبات را انجام دهد .چگونه آن را بعد از کلیک کردن صدا بزنم؟

 


  • 1400/11/17

دوست عزیز دو روش برای این وجود دارد 

اول این که میتونی با ajax اطلاعات رو بگیری و محاسبه رو انجام بدی بدون رفرش صفحه ایم کارها انجام میشه 

دوم میتونی یه اکشن پست توی کنترلر مربوطه ایجاد کنی یا همان جا محاسبات انجام بشه یا یک کلاس جدا برای محاسبه هات یا در سرویس آپدیت قیمت این کار رو انجام بدی .


  • 1400/11/20

service:

{
    public interface IUpdatePricesService
    {
        ResultDto Execute(RequestUpdatePricesDto request);
    }
    public class UpdatePricesService : IUpdatePricesService
    {
        private readonly IDataBaseContext _context;
        public UpdatePricesService(IDataBaseContext context)
        {
            _context = context;
        }
        public ResultDto Execute(RequestUpdatePricesDto request)
        {
            List<UpdatePrices> updatePrices = new List<UpdatePrices>();
            UpdatePrices prices = new UpdatePrices();
            foreach (var item in request.prices)
            {    
                int p = Convert.ToInt32(prices);
                p = p / 10;
                p = p + p;
                item.Price=p;
                
                updatePrices.Add(prices);
            };
            _context.SaveChanges();
            return new ResultDto
            {
                IsSuccess = true,
                Message = "Updated",
            };
        }
    }
}
public class RequestUpdatePricesDto
{
    public List<UpdatePrices> prices { get; set; }
}
public class UpdatePrices
{
    public int Price { get; set; }
}


controller:

        [HttpPost]
        public IActionResult UpdatePricesInProduct()
        {

            var result = _updatePrices.Execute(new RequestUpdatePricesDto { });

            return Json(result);

        }


view:

                                        <div class="col-xl-12 col-lg-12 col-md-12 mb-1">
                                            <fieldset class="form-group">
                                                <br />
                                                <a id="btnIncrease" class="btn btn-success col-md-12"> افزودن   </a>
                                            </fieldset>
                                        </div>






    <script>

        $(document).ready(function () {

            $('#btnIncrease').click(function () {

                $.ajax({

                    contentType: 'application/x-www-form-urlencoded',
                    dataType: 'json',
                    url: "UpdatePricesInProduct",
                    type: "POST",
                    data: postData,
                    cache: false,
                    async: true,
                    success: function (data) {
                        alert(data);
                    }
                });
            })

    </script>

 


  • 1400/11/22

باید لیست محصولاتت رو با ایجکس بگیری بعد که دکمه افزایش قیمت رو زدی لیست بروز بشه بازم با ایجکس 

اگه مشکل داشتی میتونی یه پیام بدی تلگرام من M_ِDeveloper1



پاسخی برای این باگ ارسال کنید

لطفا کدها را درون قطعه کد ارسال نمایید

برای ارسال پاسخ باید وارد حساب کاربری خود شوید
ورود به حساب کاربری