c# - Unity CS0308 Error -
i have started building apps using wpf , unity great source implementing mvvm architecture. have followed identical , reviewed source code have used , identical. have created class containerhelper class:
private static iunitycontainer _container; static containerhelper() { _container = new unitycontainer(); _container.registertype<iemployeesrepository, employeesrepository>( new containercontrolledlifetimemanager()); } public static iunitycontainer container { { return _container; } } and have create class employeelistviewmodel:
private iemployeesrepository _repo;
public employeelistviewmodel(iemployeesrepository repo) { _repo = repo; editemployeecommand = new relaycommand<employees>(oneditemployee); addemployeecommand = new relaycommand(onaddemployee); clearsearchcommand = new relaycommand(onclearsearch); } private string _searchinput; public string searchinput { { return _searchinput; } set { setproperty(ref _searchinput, value); filteremployee(_searchinput); } } private void filteremployee(string searchinput) { if (string.isnullorwhitespace(searchinput)) { employees = new observablecollection<employees>(_allemployees); } else { employees = new observablecollection<employees>(_allemployees.where(e => e.fullname.tolower().contains(searchinput.tolower()))); } } private void onclearsearch() { searchinput = null; } private void oneditemployee(employees emp) { editemployeerequest(emp); } private void onaddemployee() { addemployeerequested(new employees { id = guid.newguid() }); } public event action<employees> addemployeerequested = delegate { }; public event action<employees> editemployeerequest = delegate { }; private observablecollection<employees> _employees; public observablecollection<employees> employees { { return _employees; } set { setproperty(ref _employees, value); } } private list<employees> _allemployees; public async void loademplooyees() { _allemployees = await _repo.getemployeesasync(); employees = new observablecollection<employees>(_allemployees); } public relaycommand<employees> editemployeecommand { get; private set; } public relaycommand addemployeecommand { get; private set; } public relaycommand clearsearchcommand { get; private set; } }
and line of code implementing , passing employeelistviewmodel using containerhelper class:
private employeelistviewmodel _employeelistviewmodel; _employeelistviewmodel = containerhelper.container.resolve<employeelistviewmodel>(); i don't understand why getting non-generic method error using iunitycontainer.resolve(type, sring, params resolveroverride[]) cannot used type arguments.
i understand more error , can fix it...i have looked in various places find answer.
add following using directive @ top of code file calling generic resolve method:
using microsoft.practices.unity;
Comments
Post a Comment