private string GetOptionMaster(string fieldAlias) { Assume.That(fieldReader.Data, Is.Not.Null, "Cannot read the field information. fieldReader.Data is null!"); var query = from t in fieldReader.Data where t.Key.ToAlias() == fieldAlias select t; var field = query.FirstOrDefault(); Assume.That(field, Is.Not.Null, "Cannot read the field {0} !", fieldAlias); Assume.That(field.Value.ContainsKey(FieldProperty.OptionMaster), "Cannot read the master option of {0} !", fieldAlias); Assume.That(field.Value[FieldProperty.OptionMaster] as string, Is.Not.Null.And.Not.Empty, "Cannot read the master option of {0} !", fieldAlias); long masterOptionId = long.Parse(field.Value[FieldProperty.OptionMaster] as string); using (var session = TestBase.PrivateAuthentication.GetPrivateSession(AuthenticationInfoProvider.Current.DefaultCompanyName, AuthenticationInfoProvider.Current.DefaultUserLogin, AuthenticationInfoProvider.Current.DefaultUserPassword)) { List <HRBCClientPrivate.Common.OptionField> select = new List <HRBCClientPrivate.Common.OptionField> { HRBCClientPrivate.Common.OptionField.Alias }; IRequest <GetOptionRequest, GetOptionResponse> request = (HRBCClientPrivate.API.Option.GetOptionRequest.Builder().Select(select) as HRBCClientPrivate.API.Option.GetOptionRequest.IBuilderWithSelect) .WhereIds(masterOptionId); GetOptionResponse response = session.Call(request); Assume.That(response, Is.Not.Null, "Cannot read the master option!"); Assume.That(response.OptionData, Is.Not.Null, "Cannot read the master option! OptionData of the response is null!"); Assume.That(response.OptionData.Single().Value.Alias, Is.Not.Null.And.Not.Empty, "Cannot read the master option! Option alias is null or empty!"); return($"Option.{response.OptionData.Single().Value.Alias}"); } }
/// <summary> /// 获取下载任务的设置 /// </summary> /// <param name="gid"></param> /// <returns></returns> public async Task <object> GetOption(string gid) { var res = new GetOptionResponse(await _client.SendRequestAsync(new GetOptionRequest { GID = gid })); return(res?.Option); }