static void Main(string[] args) { MollieClient mollieClient = new MollieClient(ConfigurationManager.AppSettings["mollie_api_key"]); Console.WriteLine("Loading iDeal issuers ..."); Issuers issuers = mollieClient.ListIssuers(); foreach (Issuer issuer in issuers.data) { Console.WriteLine(issuer.name); } Console.WriteLine("Starting payment without method ..."); Payment payment = new Payment { amount = 99.99M, description = "Test payment", redirectUrl = "http://www.foxip.net/completed/?orderId=1245", }; PaymentStatus status = mollieClient.CreatePayment(payment); Console.WriteLine("The status is: " + status.status); Console.WriteLine("Please follow this link to start the payment:"); Console.WriteLine(status.links.paymentUrl); Console.WriteLine("Press [enter] to continue ..."); Console.ReadLine(); Console.WriteLine("Getting status ..."); status = mollieClient.GetPayment(status.id); Console.WriteLine("The status is now: " + status.status); //Refunds only for iDEAL, Bancontact/Mister Cash, SOFORT Banking, creditcard and banktransfer Console.WriteLine("Refunding ..."); try { RefundStatus refundStatus = mollieClient.CreateRefund(status.id); Console.WriteLine("The status is now: " + refundStatus.payment.status); } catch (Exception ex) { Console.WriteLine("Exception: " + ex.Message); } Console.WriteLine("Starting payment with a specific method ..."); status = mollieClient.CreatePayment(new Payment { amount = 1.99M, method = Method.mistercash, description = "Test payment", redirectUrl = "http://www.foxip.net/completed/?orderId=12345" }); Console.WriteLine("The status is: " + status.status); Console.WriteLine("Please follow this link to start the payment:"); Console.WriteLine(status.links.paymentUrl); Console.WriteLine("Press [enter] to continue ..."); Console.ReadLine(); }
public static String GetTemplateMollieData(String templatename, NBrightInfo pluginInfo) { var templ = GetTemplateData(templatename, pluginInfo); #region "Get Mollie options from API" var info = ProviderUtils.GetProviderSettings("DnnCMolliepayment"); var testMode = info.GetXmlPropertyBool("genxml/checkbox/testmode"); var testApiKey = info.GetXmlProperty("genxml/textbox/testapikey"); var liveApiKey = info.GetXmlProperty("genxml/textbox/liveapikey"); // Check to see if the test api keys is filled in, stops the error with the settings in the backoffice if (testApiKey != "") { var apiKey = testApiKey; if (!testMode) { apiKey = liveApiKey; } MollieClient mollieClient = new MollieClient(); mollieClient.setApiKey(apiKey); var strPayOptions = ""; PaymentMethods methods = mollieClient.GetPaymentMethods(); Issuers issuers = mollieClient.GetIssuers(); foreach (PaymentMethod method in methods.data) { strPayOptions += "<tr>"; strPayOptions += "<td><input type='radio' id='" + method.id + "' value='" + method.id + "' name='group1' class='rdoBanks' /></td>"; strPayOptions += "<td><img src='" + method.image.normal + "' /></td>"; strPayOptions += "<td><strong>" + method.description + "</strong></td>"; strPayOptions += "</tr>"; if (method.id == "ideal") { strPayOptions += "<tr><td colspan='3'><div id='bank-holder' class='hidden'>"; strPayOptions += "<select id='mollieidealgatewaybankselectordropdown' name='mollieidealgatewaybankselectordropdown' class='bankSelector'>"; strPayOptions += "<option>" + info.GetXmlProperty("genxml/textbox/bankdropdowntext") + "</option>"; foreach (Issuer issuer in issuers.data) { strPayOptions += string.Format("<option value=\"{0}\">{1}</option>", issuer.id, issuer.name); } strPayOptions += "</select>"; strPayOptions += "</div></td></tr>"; } strPayOptions += "<tr><td colspan='3'><hr/></td></tr>"; } templ = templ.Replace("[PAYMENTMETHODS]", strPayOptions); } #endregion return(templ); }
public void CreatesCorrectPolicy(string issuer1, string issuer2) { var basePolicy = new Issuers(new [] { issuer1, issuer2 }); var xml = basePolicy.GetXml().ToString(); xml.Should().Be( @$ "<issuers> <issuer>{issuer1}</issuer>
public IActionResult IssuersEdit(string id) { ObjectId oId = new ObjectId(id); Issuers issuers = collection.Find(e => e.IssuerId == oId).FirstOrDefault(); return(View(issuers)); //in order to render object which we wants to edit }
public void IDEAL_CanGetIssuers() { Issuers issuers = mollieClient.GetIssuers(); Assert.IsTrue(issuers.count > 0, "Found 0 issuers"); foreach (Issuer issuer in issuers.data) { Assert.IsTrue(issuer.name != ""); Assert.IsTrue(issuer.id != ""); Assert.IsTrue(issuer.method != ""); } }
public IActionResult Issuers() { var claimsIdentity = (ClaimsIdentity)User.Identity; /*var claim = claimsIdentity.FindFirst(ClaimTypes.Email);*/ var claim = claimsIdentity.Claims.ToArray(); var email = claim[1].Value; var userid = User.Claims.FirstOrDefault(c => c.Type == AppUtility.UserId).Value; //claim[3].Value; var issuer = collection.Find(FilterDefinition <Issuers> .Empty).ToList(); var userSpecificIssuer = issuer.Where(e => e.UserId == new ObjectId(userid)).FirstOrDefault(); ObjectId oId = userSpecificIssuer.IssuerId; Badge b = badgeCollection.Find(e => e.IssuerId == oId).FirstOrDefault(); int count = 0; Issuers issuers = collection.Find(e => e.IssuerId == oId).FirstOrDefault(); IEnumerable <Badge> badge = badgeCollection.Find(e => e.IssuerId == oId).ToList(); if (b == null) { count = 0; } else { #region test var usr = _u.FindById(userid.ToString()); var isser = _i.AsQueryable().ToList(); var actualIssuer = isser.Where(e => e.UserId == usr.Id).FirstOrDefault(); var bdg = _b.AsQueryable().ToList(); var totalBadg = bdg.Where(e => e.IssuerId == actualIssuer.Id).ToList(); for (int l = 0; l < totalBadg.Count; l++) { var earnerBadge = earnerBadgeDetails.Find(e => e.BadgeId == new ObjectId(totalBadg[l].Id.ToString())).ToList(); count = count + earnerBadge.Count(); } #endregion //IEnumerable<EarnerBadgeDetails> earnerBadge = earnerBadgeDetails.Find(e => e.BadgeId == b.BadgeId).ToList(); //count = earnerBadge.Count(); } IssuerBadge issuerBadge = new IssuerBadge() { Id = oId.ToString(), issuer = issuers, badge = badge, Badge_Count = count }; return(View(issuerBadge)); }
public void CanGetIssuers() { Issuers issuers = mollieClient.ListIssuers(); Assert.IsTrue(issuers.count > 0, "Found 0 issuers"); foreach (Issuer issuer in issuers.data) { Assert.IsTrue(issuer.name != ""); Assert.IsTrue(issuer.id != ""); Assert.IsTrue(issuer.method != ""); var issuerDetails = mollieClient.GetIssuer(issuer.id); Assert.AreEqual(issuerDetails.id, issuer.id); } }
public void CanMakePaymentWithIssuer() { Issuers issuers = mollieClient.ListIssuers(); Payment payment = new Payment { amount = 99.99M, description = "Test payment", redirectUrl = "http://www.foxip.net/test/12345", method = Method.ideal, issuer = issuers.data[0].id }; PaymentStatus status = mollieClient.CreatePayment(payment); Assert.AreEqual(status.method, Method.ideal); }
public IEnumerable <ValidationResult> Validate(ValidationContext validationContext) { var results = new List <ValidationResult>(); if (UpdateState == PartyUpdateStates.Manual) { if (Issuers?.Count(i => !string.IsNullOrWhiteSpace(i)) <= 0) { results.Add(new ValidationResult($"Require at least one issuer in '{nameof(Issuers)}'. If '{nameof(UpdateState)}' is '{PartyUpdateStates.Manual}'.", new[] { nameof(Issuers) })); } if (Keys?.Count <= 0) { results.Add(new ValidationResult($"Require at least one key in '{nameof(Keys)}'. If '{nameof(UpdateState)}' is '{PartyUpdateStates.Manual}'.", new[] { nameof(Keys) })); } if (Client.AuthorizeUrl.IsNullOrEmpty()) { results.Add(new ValidationResult($"Require '{nameof(Client)}.{nameof(Client.AuthorizeUrl)}'. If '{nameof(UpdateState)}' is '{PartyUpdateStates.Manual}'.", new[] { $"{nameof(Client)}.{nameof(Client.AuthorizeUrl)}" })); } if (Client.ResponseType?.Contains(IdentityConstants.ResponseTypes.Code) == true) { if (Client.TokenUrl.IsNullOrEmpty()) { results.Add(new ValidationResult($"Require '{nameof(Client)}.{nameof(Client.TokenUrl)}' to execute '{IdentityConstants.ResponseTypes.Code}' response type. If '{nameof(UpdateState)}' is '{PartyUpdateStates.Manual}'.", new[] { $"{nameof(Client)}.{nameof(Client.TokenUrl)}" })); } } } else { if (!OidcDiscoveryUpdateRate.HasValue) { results.Add(new ValidationResult($"Require '{nameof(OidcDiscoveryUpdateRate)}'. If '{nameof(UpdateState)}' is different from '{PartyUpdateStates.Manual}'.", new[] { nameof(OidcDiscoveryUpdateRate) })); } } return(results); }
public async Task <IActionResult> Award(string id, AwardBadge awardBadge) { if (ModelState.IsValid) { var claimsIdentity = (ClaimsIdentity)User.Identity; /*var claim = claimsIdentity.FindFirst(ClaimTypes.Email);*/ var claim = claimsIdentity.Claims.ToArray(); var email = claim[1].Value; var userid = User.Claims.FirstOrDefault(c => c.Type == AppUtility.UserId).Value; ObjectId oid = new ObjectId(id); Badge badge = badgeCollection.Find(e => e.BadgeId == oid).FirstOrDefault(); ObjectId issuerId = badge.IssuerId; Issuers issuer = collection.Find(e => e.IssuerId == issuerId).FirstOrDefault(); DateTime d = DateTime.Now; DateTime d1 = DateTime.Today.AddDays(badge.ExpiryDuration); EarnerBadgeDetails buc = new EarnerBadgeDetails() { BadgeId = badge.BadgeId, RecipientName = awardBadge.EarnerBadgeDetails.RecipientName, RecipientEmail = awardBadge.EarnerBadgeDetails.RecipientEmail, AwardedDate = d, ExpirationDate = d1, UserId = new ObjectId(userid.ToString()) }; earnerBadgeDetails.InsertOne(buc); /*await _emailSender.SendEmailAsync(buc.RecipientEmail, "Congratulation, you earned a Badge", * * $"<div class='p-6 m-3 border rounded row' style='background-color:beige'><div class='col-3'></div><div class='col-6' style='background-color:white'><div class='row text-center m-2'><h3 style = 'color:blueviolet' >Congratulation, you earned a badge</h3></div><hr /><div class='text-center'><img src = 'https://dab1nmslvvntp.cloudfront.net/wp-content/uploads/2014/11/1415490092badge.png' width='200px' height='200px' alt='image' /></div><hr /><br /><div class='row text-left'><h4 class='m-2'>{HtmlEncoder.Default.Encode(badge.BadgeName)}</h4></div><div class='row text-left'><p class='m-2'>{HtmlEncoder.Default.Encode(badge.EarningCriteriaDescription)}</p></div><hr /><hr /><div class='row text-left m-2'><p>Issued by :</p></div><div class='row text-left m-2'><p><b>{HtmlEncoder.Default.Encode(issuer.Name)}</b></p></div><hr /><div class='text-center'><a class='btn btn-secondary' href='https://localhost:44326/'>Create Account</a></div><br /><br/></div><div class='col-3'></div></div>" * );*/ return(RedirectToAction("ViewBadge", new { id = badge.BadgeId })); } return(View()); }
public JwtValidationPolicy(IDictionary <string, string> attributes, string openIdConfigUrl = null, IEnumerable <string> issuers = null, ISectionPolicy requiredClaims = null) : base("validate-jwt", attributes) { _openIdConfig = openIdConfigUrl != null ? new OpenIdConfig(openIdConfigUrl) : null; _issuers = issuers != null ? new Issuers(issuers) : null; _requiredClaims = requiredClaims as SectionPolicy; }
public IActionResult ViewBadge(string id, int productPage = 1, string recipientEmail = null, string OID = null) { int PageSize = 2; ObjectId oId; if (id == null) { oId = new ObjectId(TempData["OID"].ToString()); TempData["OID"] = oId.ToString(); } else { oId = new ObjectId(id); TempData["OID"] = id; } StringBuilder param = new StringBuilder(); param.Append("/Issuer/Issuers/ViewBadge?productPage=:"); param.Append("&recipientEmail="); if (recipientEmail != null) { param.Append(recipientEmail); } Badge badge = badgeCollection.Find(e => e.BadgeId == oId).FirstOrDefault(); ObjectId iid = badge.IssuerId; Issuers issuers = collection.Find(e => e.IssuerId == iid).FirstOrDefault(); IEnumerable <EarnerBadgeDetails> badgeEarner = earnerBadgeDetails.Find(e => e.BadgeId == oId).ToList(); if (badge != null) { TempData["badgetest"] = badge.FacebookId; } var earner = _ed.AsQueryable().ToList(); var badgeInEarner = earner.Where(e => e.BadgeId == oId).ToList(); bool earnerCheck = false; if (badgeInEarner.Count > 0) { earnerCheck = true; } else { earnerCheck = false; } IssuerBadge i = new IssuerBadge() { badge1 = badge, issuer = issuers, EarnerBadgeDetails = badgeEarner, IsBadgeAvailableInEarner = earnerCheck }; if (recipientEmail != null) { i.EarnerBadgeDetails = i.EarnerBadgeDetails.Where(a => a.RecipientEmail.ToLower().Contains(recipientEmail.ToLower())).ToList(); } var count = i.EarnerBadgeDetails.Count(); i.EarnerBadgeDetails = i.EarnerBadgeDetails.OrderBy(p => p.AwardedDate) .Skip((productPage - 1) * PageSize) .Take(PageSize).ToList(); i.PagingInfo = new PagingInfo { CurrentPage = productPage, ItemsPerPage = PageSize, TotalItems = count, urlParam = param.ToString(), }; return(View(i)); }
public async Task <IActionResult> CreateAsync(Issuers issuers) { if (ModelState.IsValid) { try { var claimsIdentity = (ClaimsIdentity)User.Identity; var claim = claimsIdentity.Claims.ToArray(); var useid = User.Claims.FirstOrDefault(c => c.Type == AppUtility.UserId).Value; //to get userId of loggedIn user var userRole = _userRoles.AsQueryable().ToList(); //to get userRoleList var issuerRoles = userRole.Where(e => e.Role == AppUtility.IssuerRole).FirstOrDefault(); //find the object of issuer role string webRootPath = _hostEnvironment.WebRootPath; var files = HttpContext.Request.Form.Files; if (files.Count > 0) { string fileName = Guid.NewGuid().ToString(); var uploads = Path.Combine(webRootPath, @"Images\issuers"); var extenstion = Path.GetExtension(files[0].FileName); using (var filesStreams = new FileStream(Path.Combine(uploads, fileName + extenstion), FileMode.Create)) { files[0].CopyTo(filesStreams); } issuers.Image = @"\images\issuers\" + fileName + extenstion; } DateTime today = DateTime.Now; var isEmailExistInUser = _user.FilterBy(e => e.Email == issuers.Email).ToList(); var isEmailExistInIssuer = collection.Find(e => e.Email == issuers.Email).ToList(); if (isEmailExistInIssuer.Count() > 0 || isEmailExistInUser.Count() > 0) { ModelState.AddModelError(string.Empty, "User with this email already exist"); //show popup if same email exists return(View()); } DigiBadges.DataAccess.Users user = new DigiBadges.DataAccess.Users() { CreatedBy = claim[0].Value, CreatedDate = today, Email = issuers.Email, FirstName = issuers.Name, IsUserVerified = true, Password = AppUtility.Encrypt(AppUtility.IssuerPassword), RoleId = issuerRoles.Id.ToString() }; _user.InsertOne(user); //Inserting object in issuer table DigiBadges.Models.Users users = new DigiBadges.Models.Users() { CreatedBy = claim[0].Value, CreatedDate = today, Email = issuers.Email, FirstName = issuers.Name, IsUserVerified = true, Password = AppUtility.Encrypt(AppUtility.IssuerPassword), RoleId = issuerRoles.Id.ToString(), UserId = user.Id }; SolrUsersModel su = new SolrUsersModel(users); _solr.Add(su); //Adding data in solr _solr.Commit(); var userIdInUserTable = _user.AsQueryable().ToList(); var uid = userIdInUserTable.Where(e => e.Email == issuers.Email).FirstOrDefault(); if (user.Id != null) { issuers.UserId = user.Id; //setting the userId which we got after inserting the above data in user collection issuers.CreatedDate = today; } collection.InsertOne(issuers); //To post the issuer object SolrIssuersModel sissuser = new SolrIssuersModel(issuers); _solrIssuer.Add(sissuser); //Adding data in solr _solrIssuer.Commit(); await _emailSender.SendEmailAsync(issuers.Email, //to send email to new issuer "Congatulations you are invited as a issuer", $"<h4 class='m-2'>Your Email id is -{HtmlEncoder.Default.Encode(issuers.Email)}</h4></div>" + "Your password is - Welcome@123"); } catch (Exception) { ModelState.AddModelError(string.Empty, "Please try again later."); return(View()); } return(RedirectToAction("Index")); } return(View()); }
public IActionResult IssuersEdit(string id, Issuers issuer) { if (ModelState.IsValid) { string webRootPath = _hostEnvironment.WebRootPath; var files = HttpContext.Request.Form.Files; ObjectId oId = new ObjectId(id); Issuers issuers = collection.Find(e => e.IssuerId == oId).FirstOrDefault(); if (files.Count > 0) { string fileName = Guid.NewGuid().ToString(); var uploads = Path.Combine(webRootPath, @"images/issuers"); var extenstion = Path.GetExtension(files[0].FileName); if (issuer.Image != null) { //this is an edit and we need to remove old image var imagePath = Path.Combine(webRootPath, issuer.Image.TrimStart('\\')); if (System.IO.File.Exists(imagePath)) { System.IO.File.Delete(imagePath); } } using (var filesStreams = new FileStream(Path.Combine(uploads, fileName + extenstion), FileMode.Create)) { files[0].CopyTo(filesStreams); } issuer.Image = @"\images/issuers\" + fileName + extenstion; } else { //update when they do not change the image if (issuer.IssuerId != null) { issuer.Image = issuers.Image; } } var usr = _user.FindById(issuers.UserId.ToString()); usr.Email = issuer.Email; usr.FirstName = issuer.Name; _user.ReplaceOne(usr); //updating data in user collection var filter = Builders <Issuers> .Filter.Eq("IssuerId", oId); var updateDef = Builders <Issuers> .Update. Set("Name", issuer.Name); updateDef = updateDef.Set("Email", issuer.Email); updateDef = updateDef.Set("WebsiteUrl", issuer.WebsiteUrl); //updating data in Issuer collection updateDef = updateDef.Set("Image", issuer.Image); updateDef = updateDef.Set("Description", issuer.Description); var result = collection.UpdateOne(filter, updateDef); DigiBadges.Models.Users users = new DigiBadges.Models.Users() { CreatedBy = usr.CreatedBy, Email = issuer.Email, FirstName = issuer.Name, IsUserVerified = usr.IsUserVerified, Password = usr.Password, RoleId = usr.RoleId, UserId = usr.Id }; SolrUsersModel su = new SolrUsersModel(users); _solr.Add(su); _solr.Commit(); issuer.IssuerId = oId; issuer.UserId = usr.Id; SolrIssuersModel sissuser = new SolrIssuersModel(issuer); _solrIssuer.Add(sissuser); _solrIssuer.Commit(); return(RedirectToAction("Index")); } return(View()); }
public async Task <IActionResult> UpdateIssuer() { try { // var userdetail = await _userRepository.GetUserInfoById(ProgramId); using (var client = new HttpClient()) { var jposSettingsForUserBalance = (await _setting.GetGeneratSettingValueByKeyGroup(Constants.GeneralSettingsKeyGroup.JPOS_Staging)).ToList(); if (jposSettingsForUserBalance.Count > 0) { foreach (var itemForJPOS in jposSettingsForUserBalance) { switch (itemForJPOS.KeyName) { case Constants.JPOSConstants.JPOS_Version: version = itemForJPOS.Value; break; case Constants.JPOSConstants.JPOS_ConsumerId: consumerId = itemForJPOS.Value; break; case Constants.JPOSConstants.JPOS_HostURL: url = itemForJPOS.Value; break; case Constants.JPOSConstants.JPOS_N: n = itemForJPOS.Value; break; default: break; } } } if (!string.IsNullOrEmpty(consumerId) && !string.IsNullOrEmpty(url)) { client.DefaultRequestHeaders.Add("version", version); client.DefaultRequestHeaders.Add("consumer-id", consumerId); client.DefaultRequestHeaders.Add("nonce", n); var hostURLIssuerProperties = new Uri($"" + url + "issuers"); var response = await client.GetAsync(hostURLIssuerProperties); string jsonIssuerProperties; using (var content = response.Content) { jsonIssuerProperties = await content.ReadAsStringAsync(); dynamic serviceresponse = JsonConvert.DeserializeObject(jsonIssuerProperties.ToString()); Issuers issuerDetails = serviceresponse.ToObject <Issuers>(); foreach (var issuer in issuerDetails.issuer) { await _programRepository.RefreshPrograms(issuer.organizationName, int.Parse(issuer.id), int.Parse(issuer.id), int.Parse(issuer.id), 1, issuer.name, issuer.startDate, issuer.endDate); } return(Ok(new ApiResponse(StatusCodes.Status200OK, true, MessagesConstants.JPOSIssuredPropertiesReturnedSuccessfully, serviceresponse))); } } return(Ok(new ApiResponse(StatusCodes.Status200OK, false, MessagesConstants.JPOSIssuredPropertiesReturnedUnsuccessfully, null))); } } catch (Exception ex) { HttpContext.RiseError(new Exception(string.Concat("API := (JPOS := JPOSUserBalance)", ex.Message, " Stack Trace : ", ex.StackTrace, " Inner Exception : ", ex.InnerException))); return(Ok(new ApiResponse(Microsoft.AspNetCore.Http.StatusCodes.Status200OK, false, MessagesConstants.SomeIssueInProcessing))); } }
/// <summary> /// Retrieves both the short list and the long list of issuers. /// </summary> /// <returns><see cref="Issuers" /> containing the long list and short list of issuers, and the datetime stamp of the last change to the lists.</returns> /// <exception cref="XmlSchemaValidationException">Request Xml does not comply with schema.</exception> /// <exception cref="IDealException">Respons from iDEAL contains an error.</exception> /// <exception cref="ConfigurationErrorsException">Errors in configuration file.</exception> /// <exception cref="WebException">Error getting reply from acquirer.</exception> /// <exception cref="CryptographicException">Error using client certificate.</exception> public Issuers GetIssuerList() { if (traceSwitch.TraceInfo) { TraceLine("Start of GetIssuerList()"); } DirectoryReq request = CreateRequest <DirectoryReq>(); request.Merchant = CreateMerchant <DirectoryReqMerchant>(); // Serialize the request to an XML string string xmlRequest = SerializationHelper.SerializeObject <DirectoryReq>(request); var xmlDoc = new XmlDocument(); xmlDoc.LoadXml(xmlRequest); var signatureElement = XmlSignature.XmlSignature.Sign(ref xmlDoc, GetMerchantRSACryptoServiceProvider(), merchantConfig.ClientCertificate.Thumbprint); xmlRequest = xmlDoc.OuterXml; // Validate the request before sending it to the service ValidateXML(xmlRequest); // Send request / get respons string xmlResponse = GetReplyFromAcquirer(xmlRequest, merchantConfig.acquirerUrlDIR); // Validate respons ValidateXML(xmlResponse); if (!XmlSignature.XmlSignature.CheckSignature(xmlResponse, (RSA)merchantConfig.aquirerCertificate.PublicKey.Key)) { if (traceSwitch.TraceInfo) { TraceLine("Xml response was not well signed " + xmlResponse); } throw new ArgumentException("Response from server is not well signed"); } if (traceSwitch.TraceInfo) { TraceLine("Response from get issuer list was : " + xmlResponse); } // Check respons for errors CheckError(xmlResponse, Resources.iDealUnavailable); DirectoryRes response = (DirectoryRes)SerializationHelper.DeserializeObject <DirectoryRes>(xmlResponse); // Create the return object and initialze it with the iDEAL respons Directory var issuers = new Issuers(response.Directory); if (traceSwitch.TraceInfo) { TraceLine("End of GetIssuerList()"); } if (traceSwitch.TraceVerbose) { TraceLine(Format("Returnvalue: {0}", issuers.ToString())); } return(issuers); }