Использование WCF в общем проекте xamarin
Я погуглил, но не получил своих требований по потреблению WCF в xamarin.
У меня есть веб-приложение, которое размещено в локальном IIS, это приложение также имеет службу wcf.
то, что я сделал.
1. создан сервис wcf с именем Myservice.
2.in myservice. cs, есть два метода, один validateUser и saveData.
3. я создал еще один отдельный проект как xamarin cross plateform shared. или pcl. и добавил туда ссылки на веб-сервисы. мой код выглядит следующим образом.
Служба MyService.в CS
public bool SaveChallenData() { throw new NotImplementedException(); } public bool ValidateUser(string UserId, string Password) { FYP_CMSEntities1 ef = new FYP_CMSEntities1(); if (!string.IsNullOrEmpty(UserId) && !string.IsNullOrEmpty(Password)) { var login = (from ul in ef.UserLogins where ul.UserName == UserId select ul).FirstOrDefault(); if (login != null && login.Password == Password) { return true; } else { return false; } } else { return false; } } created a service class in xamarin project as below. class Service { public static string SoapUrl = "http://localhost/FYP_Admin/webservices/cmsservice.svc"; ICMSService soapService; public Service(ICMSService service) { soapService = service; } public Service() { soapService = new CMSServiceClient( new BasicHttpBinding(), new EndpointAddress(SoapUrl)); } //public Task ValidateUser(string username,string password) //{ // return soapService.BeginDoWork //} }
теперь я хочу, чтобы на Щелчке пользователя я проверял пользователя, как показано ниже
private void Button_Clicked(object sender, EventArgs e) { Service svc = new Service() var endpoint = new EndpointAddress("http://localhost/FYP_Admin/webservices/cmsservice.svc"); var binding = new BasicHttpBinding { Name = "basicHttpBinding", MaxBufferSize = 2147483647, MaxReceivedMessageSize = 2147483647 }; string username = usernameEntry.Text.Trim(); string password = passwordEntry.Text.Trim(); bool result = svc.ValidateUser(username, password); if (result == true) { App.Navigation.PushAsync(new MainPage()); } else { DisplayAlert("Oops","Credentials are incorrect","Cancel"); } }
Но я не мог найти здесь никакого метода проверки.
Что я уже пробовал:
я уже упоминал о том, что я сделал