• 1396/12/27

استفاده از الگدی ریپوزیتوری :

سلام استاد خسته نباشید و پیشاپیش سال نو رو به شما و همکاران عزیز تبریک و تهنیت عرض میکنم.من یه مشکل داشتم که با خرید این محموعه نیز حل نشد.من برای ذخیره اطلاعات از الگوی ریپوزیتوری استفاده میکنم و روی فرم سه تا dropdown دارم که میخام value اونها رو ذخیره کنم ولی نمیدونم چطور باید این کارو انجام بدم خواستم یه راهنمایی بفرمائید. مشکلم اینجاست که نمیدونم توی actionresualt چطوری مقادیر DropDown هایی که روی فرم هست رو بگیرم و به view پاس بدم. ممنونم.

 

repository code :

----

using System;
using System.Collections.Generic;
using System.Linq;
using System.Web;
 
namespace test.Models.Repository
{
public class Rep_Users:IDisposable
{
private test.Models.DomainModel.TestEntities db = null;
public Rep_Users()
{
db = new DomainModel.TestEntities();
}
 
public bool Add(test.Models.DomainModel.tbl_user entity,int State_ID)
{
 
if (Convert.ToBoolean(db.tbl_user.Add(entity))==true)
{
return true;
}
else
{
return false;
}
 
}
 
public bool Update(test.Models.DomainModel.tbl_user entity, bool autoSave = true)
{
try
{
db.tbl_user.Attach(entity);
db.Entry(entity).State = System.Data.Entity.EntityState.Modified;
if (autoSave)
return Convert.ToBoolean(db.SaveChanges());
else
return false;
}
catch
{
return false;
}
}
 
public bool Delete(test.Models.DomainModel.tbl_user entity, bool autoSave = true)
{
try
{
db.Entry(entity).State = System.Data.Entity.EntityState.Deleted;
if (autoSave)
return Convert.ToBoolean(db.SaveChanges());
else
return false;
}
catch
{
return false;
}
}
 
public bool Delete(int id, bool autoSave = true)
{
try
{
var entity = db.tbl_user.Find(id);
db.Entry(entity).State = System.Data.Entity.EntityState.Deleted;
if (autoSave)
return Convert.ToBoolean(db.SaveChanges());
else
return false;
}
catch
{
return false;
}
}
 
public test.Models.DomainModel.tbl_user Find(int id)
{
try
{
return db.tbl_user.Find(id);
}
catch
{
return null;
}
}
 
public IQueryable<test.Models.DomainModel.tbl_user> Where(System.Linq.Expressions.Expression<Func<test.Models.DomainModel.tbl_user, bool>> predicate)
{
try
{
return db.tbl_user.Where(predicate);
}
catch
{
return null;
}
}
 
public IQueryable<test.Models.DomainModel.tbl_user> Select()
{
try
{
return db.tbl_user.AsQueryable();
}
catch
{
return null;
}
}
 
public IQueryable<TResult> Select<TResult>(System.Linq.Expressions.Expression<Func<test.Models.DomainModel.tbl_user, TResult>> selector)
{
try
{
return db.tbl_user.Select(selector);
}
catch
{
return null;
}
}
 
public int GetLastIdentity()
{
try
{
if (db.tbl_user.Any())
return db.tbl_user.OrderByDescending(p => p.ID).First().ID;
else
return 0;
}
catch
{
return -1;
}
}
 
public int Save()
{
try
{
return db.SaveChanges();
}
catch
{
return -1;
}
}
 
public void Dispose()
{
Dispose(true);
GC.SuppressFinalize(this);
}
 
protected virtual void Dispose(bool disposing)
{
if (disposing)
{
if (this.db != null)
{
this.db.Dispose();
this.db = null;
}
}
}
 
~Rep_Users()
{
Dispose(false);
}
}
}

 

تا اینجا مشکلی ندارم ولی مشکلم اینجاست که نمیدونم توی actionresualt چطوری مقادیر DropDown هایی که روی فرم هست رو بگیرم و به view پاس بدم.

[HttpGet]
public ActionResult Add_User()
{
return View();
}
[HttpPost]
public ActionResult Add_User(tbl_user _Usr)
{
Rep_Users user = new Rep_Users();
user.Add(_Usr);
use.savechange();
return View();
}
  • 1396/12/27
  • ساعت 18:30

برای اکشن باید ورودی هایی هم نام و از نوع ddl ها تعریف کنید

اینجوری ورودی مقادیر انتخاب شده دریافت میشه


  • 1396/12/27
  • ساعت 22:29

آیا امکانش هست با یه مثال این موضوع رو برام روشن کنید متوجه نمیشم باید چکار کنم.ممنونم استاد عزیز

 

و سوال بعد اینه که دوره پیشرفته هم بعد از اتمام امکان خریداریش رو فراهم میکنید؟


  • 1396/12/27
  • ساعت 22:33

بررسی میکنم و اگر نمونه داشتم قرار میدم‌

دوره پیشرفته به زودی استارت میخوره


logo-samandehi