using System; using System.Threading.Tasks; using 報到系統客戶端.Models; namespace 報到系統客戶端.Services { /// /// 登入服務客戶端 /// 呼叫後端 Services/LoginService.asmx /// public class LoginService { private const string SERVICE_PATH = "/Services/LoginService.asmx"; /// /// 登入 /// /// 使用者名稱 /// 密碼 /// 是否記住密碼 /// 登入結果 public static BaseResponse Login(string username, string password, bool rememberMe = false) { var parameters = new { username = username, password = password, rememberMe = rememberMe }; return ApiService.Instance.Post(SERVICE_PATH, "Login", parameters); } /// /// 登入(非同步版本) /// public static async Task LoginAsync(string username, string password, bool rememberMe = false) { var parameters = new { username = username, password = password, rememberMe = rememberMe }; return await ApiService.Instance.PostAsync(SERVICE_PATH, "Login", parameters); } /// /// 登出 /// /// 登出結果 public static BaseResponse Logout() { return ApiService.Instance.Post(SERVICE_PATH, "Logout", null); } /// /// 登出(非同步版本) /// //public static async Task LogoutAsync() //{ // return await ApiService.Instance.PostAsync(SERVICE_PATH, "Logout", null); //} /// /// 檢查 Session(當作心跳使用) /// /// 檢查結果 public static BaseResponse CheckSession() { return ApiService.Instance.Post(SERVICE_PATH, "CheckSession", null); } /// /// 檢查 Session(非同步版本) /// //public static async Task CheckSessionAsync() //{ // return await ApiService.Instance.PostAsync(SERVICE_PATH, "CheckSession", null); //} /// /// 清除 Session /// public static void ClearSession() { ApiService.Instance.ClearSession(); } /// /// 測試是否能連線 /// /// public static bool Ping() { var pingResult = ApiService.Instance.Post(SERVICE_PATH, "Ping", null); return pingResult != null; } } }