Public general use code classes and xml files that we've compiled and used over the years:
Structure of the natureland.net website.
1: using System;
2: using System.Collections.Generic;
3: using System.IO;
4: using System.Linq;
5: using System.Reflection;
6: using System.Xml.Linq;
7: using System.Text.RegularExpressions;
8: using System.Text;
9: using OpenQA.Selenium;
10: using OpenQA.Selenium.Chrome;
11:
12: namespace Ia.Statistics.Cl.Models.Natureland
13: {
14: ////////////////////////////////////////////////////////////////////////////
15:
16: /// <summary publish="true">
17: /// Structure of the natureland.net website.
18: /// </summary>
19: /// <remarks>
20: /// Copyright © 2024-2025 Jasem Y. Al-Shamlan (info@ia.com.kw), Integrated Applications - Kuwait. All Rights Reserved.
21: ///
22: /// This library is free software: you can redistribute it and/or modify it under the terms of the GNU General Public License as published by
23: /// the Free Software Foundation, either version 3 of the License, or (at your option) any later version.
24: ///
25: /// This program is distributed in the hope that it will be useful, but WITHOUT ANY WARRANTY; without even the implied warranty of
26: /// MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU General Public License for more details.
27: ///
28: /// You should have received a copy of the GNU General Public License along with this library. If not, see http://www.gnu.org/licenses.
29: ///
30: /// Copyright notice: This notice may not be removed or altered from any source distribution.
31: /// </remarks>
32: public class Default
33: {
34: private static XDocument xd;
35:
36: private static List<Ia.Statistics.Cl.Models.Category> categoryList;
37:
38: private static List<Ia.Statistics.Cl.Models.Product> productList;
39:
40: private static List<Ia.Statistics.Cl.Models.Site> naturelandSiteList = new List<Site>{
41: Ia.Statistics.Cl.Models.Site.NaturelandKuwait,
42: Ia.Statistics.Cl.Models.Site.NaturelandSaudiArabia,
43: Ia.Statistics.Cl.Models.Site.NaturelandEmirates,
44: Ia.Statistics.Cl.Models.Site.NaturelandQatar,
45: Ia.Statistics.Cl.Models.Site.NaturelandBahrain,
46: };
47:
48: ////////////////////////////////////////////////////////////////////////////
49:
50: /// <summary>
51: ///
52: /// </summary>
53: public Default() { }
54:
55: ////////////////////////////////////////////////////////////////////////////
56:
57: /// <summary>
58: ///
59: /// </summary>
60: public static string ReadUpdateProductListOfCategorySequentially(Ia.Statistics.Cl.Models.Site site0)
61: {
62: string s;
63:
64: var category = Ia.Statistics.Cl.Models.Natureland.Default.CategoryList.RandomThenNext();
65:
66: // KW
67: //var category = (from c in Ia.Statistics.Cl.Model.Natureland.Default.CategoryList where c.Id == 20306 select c).SingleOrDefault();
68:
69: // SA
70: //var category = (from c in Ia.Statistics.Cl.Model.Natureland.Default.CategoryList where c.Id == 30503 select c).SingleOrDefault();
71:
72: var site = Ia.Statistics.Cl.Models.Site.SiteFromId(category.SiteId);
73:
74: var productPriceStockQuantitySoldList = ProductPriceStockListOfCategory(site, category, out string exception);
75:
76: if (string.IsNullOrEmpty(exception))
77: {
78: if (productPriceStockQuantitySoldList.Count > 0)
79: {
80: s = string.Empty;
81:
82: foreach (var productPriceStockQuantitySold in productPriceStockQuantitySoldList)
83: {
84: if (!string.IsNullOrEmpty(productPriceStockQuantitySold.Product.Sku))
85: {
86: Ia.Statistics.Cl.Models.Product.Create(productPriceStockQuantitySold.Product);
87: Ia.Statistics.Cl.Models.ProductPriceSpot.Create(productPriceStockQuantitySold.Product, productPriceStockQuantitySold.Price);
88: Ia.Statistics.Cl.Models.ProductStockSpot.Create(productPriceStockQuantitySold.Product, productPriceStockQuantitySold.Stock);
89:
90: s += "Product: " + productPriceStockQuantitySold.Product.Name + "; price: " + productPriceStockQuantitySold.Price + "; stock: " + productPriceStockQuantitySold.Stock + ". ";
91: }
92: else
93: {
94: s += "Product: " + productPriceStockQuantitySold.Product.Name + ": SKU is null. ";
95: }
96: }
97: }
98: else s = "Product list is 0. ";
99:
100: s = site.Name + ": " + category.Url + ": " + s;
101: }
102: else s = exception;
103:
104: return s;
105: }
106:
107: ////////////////////////////////////////////////////////////////////////////
108:
109: /// <summary>
110: ///
111: /// </summary>
112: public static List<Ia.Statistics.Cl.Models.ProductPriceStockQuantitySold> ProductPriceStockListOfCategory(Ia.Statistics.Cl.Models.Site site, Ia.Statistics.Cl.Models.Category category, out string exception)
113: {
114: int areaId;
115:
116: var productPriceStockQuantitySoldList = new List<Ia.Statistics.Cl.Models.ProductPriceStockQuantitySold>();
117:
118: var options = new ChromeOptions();
119:
120: var chromeDriverService = ChromeDriverService.CreateDefaultService();
121: chromeDriverService.HideCommandPromptWindow = true;
122: chromeDriverService.SuppressInitialDiagnosticInformation = true;
123:
124: options.AddArgument("--headless");
125: options.AddArgument("--log-level=3");
126: options.AddArgument("--disable-extensions");
127: options.AddArgument("--ignore-certificate-errors");
128:
129: switch (site.Iso)
130: {
131: case "KW": areaId = 446; break;
132: case "SA": areaId = 1563; break;
133: case "AE": areaId = 1019; break;
134: case "QA": areaId = 11; break;
135: case "BH": areaId = 13; break;
136: default: areaId = 446; break;
137: }
138:
139: using (var chromeDriver = new OpenQA.Selenium.Chrome.ChromeDriver(chromeDriverService, options))
140: {
141: chromeDriver.Manage().Timeouts().ImplicitWait = Ia.Statistics.Cl.Models.Default.TimeoutTimeSpan;
142:
143: chromeDriver.Navigate().GoToUrl(category.Url);
144:
145: chromeDriver.Manage().Cookies.AddCookie(new OpenQA.Selenium.Cookie("1P_JAR", DateTime.UtcNow.AddHours(3).ToString("yyyy-MM-dd-hh")));
146: chromeDriver.Manage().Cookies.AddCookie(new OpenQA.Selenium.Cookie("NAT_ACCESS_TOKEN", "7a8b9ea2f7.670fb5a00a5d4c525103156ed937c552b58dad8b6234083059d76c2fca1fa076"));
147: chromeDriver.Manage().Cookies.AddCookie(new OpenQA.Selenium.Cookie("NAT_AREA", areaId.ToString()));
148: chromeDriver.Manage().Cookies.AddCookie(new OpenQA.Selenium.Cookie("NAT_CART_ITEMS", "%7B%7D"));
149: chromeDriver.Manage().Cookies.AddCookie(new OpenQA.Selenium.Cookie("NAT_COUNTRY", site.Iso));
150: chromeDriver.Manage().Cookies.AddCookie(new OpenQA.Selenium.Cookie("NAT_LOCALE", "en"));
151: chromeDriver.Manage().Cookies.AddCookie(new OpenQA.Selenium.Cookie("NAT_UID_KEY", "D03DEE19-B609-412E-D689-39A2B7ED1681"));
152: chromeDriver.Manage().Cookies.AddCookie(new OpenQA.Selenium.Cookie("NEXT_LOCALE", "en"));
153:
154: chromeDriver.Navigate().GoToUrl(category.Url); // I will access site again with location cookies
155:
156: // maximize the browser
157: // chromeDriver.Manage().Window.Maximize();
158:
159: // scroll down the webpage
160: var javaScriptExecutor = ((IJavaScriptExecutor)chromeDriver);
161: javaScriptExecutor.ExecuteScript("window.scrollTo(0, document.body.scrollHeight)");
162:
163: var content = chromeDriver.PageSource;
164:
165: ProductPriceStockListFromCategoryContent(site, category, content, out productPriceStockQuantitySoldList, out exception);
166: }
167:
168: return productPriceStockQuantitySoldList;
169: }
170:
171: ////////////////////////////////////////////////////////////////////////////
172:
173: /// <summary>
174: ///
175: /// </summary>
176: public static void ProductPriceStockListFromCategoryContent(Ia.Statistics.Cl.Models.Site site, Ia.Statistics.Cl.Models.Category category, string content, out List<Ia.Statistics.Cl.Models.ProductPriceStockQuantitySold> productPriceStockQuantitySoldList, out string exception)
177: {
178: productPriceStockQuantitySoldList = new List<Ia.Statistics.Cl.Models.ProductPriceStockQuantitySold>();
179:
180: var match1 = Regex.Match(content, @"""locale"":""en-(.+?)""", RegexOptions.None, Ia.Statistics.Cl.Models.Default.TimeoutTimeSpan);
181:
182: if (match1.Success)
183: {
184: var countryIso2 = match1.Groups[1].Value;
185:
186: if (site.BaseUrl.Contains(countryIso2))
187: {
188: var match2 = Regex.Match(content, @"<script id=""__NEXT_DATA__"" type=""application/json"">(.+?)</script>", RegexOptions.None, Ia.Statistics.Cl.Models.Default.TimeoutTimeSpan);
189:
190: if (match2.Success)
191: {
192: var s1 = match2.Groups[1].Value;
193:
194: var match3 = Regex.Match(s1, @"""pageProps"":(\{""pageData"".+?\}\}),""pageFilters"":", RegexOptions.None, Ia.Statistics.Cl.Models.Default.TimeoutTimeSpan);
195:
196: if (match3.Success)
197: {
198: var s2 = match3.Groups[1].Value + "}"; // important to fix JSON format of segment
199:
200: // {"id":614,"name":"Cherry Tomatoes 250g","slug":"cherry-tomatoes-614","default_sku_id":611,"skus":[{"id":611,"name":"250g","slug":"250g-611","price":{"price":0.995,"old_price":null,"vat":false},"buy_limit":5,"medias":[{"url":"https://naturelandcdn-master.fra1.cdn.digitaloceanspaces.com/media/noname/sku/q5FnF9/cb1e8879-1820-4bf6-9f2c-ca3276cee639_izc9O8sjO.jpeg","type":"image","blurhash":"UYSYjk%Mpwx[%Mj@fkkCuibHVEoM%Mj[jFae","format":"jpeg"}]}],"brand":{"id":2,"name":"Earth","slug":"earth-2"},"category":{"id":1,"slug":"fruits-vegetables-1","name":"Fruits \u0026 Vegetables","color":"#334455","text_color":"#000000"},"subcategory":{"id":3,"name":"Vegetables","slug":"vegetables-3"}},
201: var matchCollection = Regex.Matches(s2, @"{""id"":(.+?),""name"":""(.+?)"",""slug"":""(.+?)"",""default_sku_id"":(.+?),""skus"":.+?,""price"":{""price"":(.+?),.+?,""buy_limit"":(.+?),.+?}}", RegexOptions.Singleline, Ia.Statistics.Cl.Models.Default.TimeoutTimeSpan);
202:
203: foreach (Match match in matchCollection)
204: {
205: var product = new Ia.Statistics.Cl.Models.Product();
206: var productPriceStockQuantitySold = new Ia.Statistics.Cl.Models.ProductPriceStockQuantitySold();
207:
208: var sku = match.Groups[4].Value; // default_sku_id;
209:
210: var name = match.Groups[2].Value; // name
211: name = Ia.Statistics.Cl.Models.Default.NormalizeName(name);
212:
213: var url = match.Groups[3].Value; // slug;
214:
215: product.Id = Ia.Statistics.Cl.Models.Product.ProductId(site, sku);
216: product.SiteId = site.Id;
217: //product.Category = category;
218: product.Sku = sku;
219: product.Name = name;
220: product.Url = site.BaseUrl + "/product/" + url;
221:
222: var price = decimal.TryParse(match.Groups[5].Value, out decimal d) ? d : 0;
223:
224: var stock = int.Parse(match.Groups[6].Value); // buy_limit;
225: stock = stock <= Ia.Statistics.Cl.Models.Default.MaximumReasonableStockValue ? stock : Ia.Statistics.Cl.Models.Default.MaximumReasonableStockValue;
226:
227: productPriceStockQuantitySold.Product = product;
228: productPriceStockQuantitySold.Price = price;
229: productPriceStockQuantitySold.Stock = stock;
230:
231: productPriceStockQuantitySoldList.Add(productPriceStockQuantitySold);
232: }
233:
234: exception = string.Empty;
235: }
236: else
237: {
238: exception = @"Error: Could not match ""pageProps"":(\{ ""pageData"".+?\}\}),""pageFilters"":";
239: }
240: }
241: else
242: {
243: exception = @"Error: Could not match <script id=\""__NEXT_DATA__\"" type=\""application/json\"">(.+?)</script>";
244: }
245: }
246: else
247: {
248: exception = @"Error: content file country ISO2 does not match site BaseUrl. ";
249: }
250: }
251: else
252: {
253: exception = @"Error: Could not match code2 in content file. ";
254: }
255: }
256:
257: ////////////////////////////////////////////////////////////////////////////
258:
259: /// <summary>
260: ///
261: /// </summary>
262: public static List<Ia.Statistics.Cl.Models.Category> CategoryList
263: {
264: get
265: {
266: if (categoryList == null || categoryList.Count == 0)
267: {
268: categoryList = new List<Models.Category>();
269:
270: foreach (var site in naturelandSiteList)
271: {
272: categoryList.AddRange((from c in XDocument.Element("natureland").Descendants("category")
273: where !c.HasElements
274: select new Ia.Statistics.Cl.Models.Category
275: {
276: Id = Ia.Statistics.Cl.Models.Category.CategoryId(site, int.Parse(c.Attribute("id").Value)),
277: SiteId = site.Id,
278: Url = site.BaseUrl + c.Attribute("url").Value,
279: Name = c.Attribute("name").Value
280: }
281: ).ToList<Ia.Statistics.Cl.Models.Category>());
282:
283: categoryList = categoryList.Shuffle().ToList();
284: }
285: }
286:
287: return categoryList;
288: }
289: }
290:
291: ////////////////////////////////////////////////////////////////////////////
292:
293: /// <summary>
294: ///
295: /// How to embed and access resources by using Visual C# http://support.microsoft.com/kb/319292/en-us
296: ///
297: /// 1. Change the "Build Action" property of your XML file from "Content" to "Embedded Resource".
298: /// 2. Add "using System.Reflection".
299: /// 3. Manifest resource stream will start with the project namespace, the location of XML file.
300: ///
301: /// </summary>
302:
303: private static XDocument XDocument
304: {
305: get
306: {
307: Assembly assembly;
308: StreamReader streamReader;
309:
310: xd = null;
311: assembly = Assembly.GetExecutingAssembly();
312: streamReader = new StreamReader(assembly.GetManifestResourceStream("Ia.Statistics.Cl.Models.natureland.net.default.xml"));
313:
314: try
315: {
316: if (streamReader.Peek() != -1)
317: {
318: xd = System.Xml.Linq.XDocument.Load(streamReader);
319: }
320: }
321: catch (Exception)
322: {
323: }
324: finally
325: {
326: }
327:
328: return xd;
329: }
330: }
331:
332: ////////////////////////////////////////////////////////////////////////////
333: ////////////////////////////////////////////////////////////////////////////
334: }
335: }
- HomeController (Ia.Hsb.DrugOnCall.Wa.Controllers) :
- ErrorViewModel (Ia.Hsb.DrugOnCall.Wa.Models) :
- HomeViewModel (Ia.Hsb.DrugOnCall.Wa.Models) :
- Ui (Ia.Hsb.DrugOnCall.Wa.Models) :
- HomeController (Ia.Hsb.Pregnalact.Wa.Controllers) :
- ErrorViewModel (Ia.Hsb.Pregnalact.Wa.Models) :
- HomeViewModel (Ia.Hsb.Pregnalact.Wa.Models) :
- Ui (Ia.Hsb.Pregnalact.Wa.Models) :
- AgentController (Ia.Api.Wa.Controllers) : Agent API Controller class.
- AuthorizationHeaderHandler () :
- DefaultController (Ia.Api.Wa.Controllers) : Default API Controller class.
- GeoIpController (Ia.Api.Wa.Controllers) : GeoIp API Controller class of Internet Application project model.
- HeartbeatController (Ia.Api.Wa.Controllers) : Heartbeat API Controller class.
- HomeController (Ia.Api.Wa.Controllers) :
- PacketController (Ia.Api.Wa.Controllers) : Packet API Controller class.
- TempController (Ia.Api.Wa.Controllers.Db) : DB Temp API Controller class.
- TraceController (Ia.Api.Wa.Controllers) : Trace API Controller class.
- WeatherController (Ia.Api.Wa.Controllers) : OpenWeatherMap API Controller class.
- WebhookController (Ia.Api.Wa.Controllers) : Webhook API Controller class.
- Ui (Ia.Api.Wa.Models) :
- WeatherForecast (Ia.Api.Wa.Models) :
- Webhook (Ia.Api.Wa.Models) :
- HomeController (Ia.Cdn.Wa.Controllers) :
- ErrorViewModel (Ia.Cdn.Wa.Models) :
- ApplicationDbContext (Ia.Cl) :
- ApplicationUser (Ia.Cl) :
- Db (Ia.Cl) :
- DynamicSiteMapProvider () : Sitemap support class.
- Enumeration () : Enumeration class. Extends enumeration to class like behaviour.
- Extention () : Extention methods for different class objects.
- Agent (Ia.Cl.Models) : Agent model
- ApplicationConfiguration (Ia.Cl.Models) : ApplicationConfiguration class.
- Authentication (Ia.Cl.Model) : Manage and verify user logging and passwords. The administrator will define the user's password and logging website. The service will issue a true of false according to authentication.
- Storage (Ia.Cl.Model.Azure) : Azure Cloud related support functions.
- Default (Ia.Cl.Model.Business.Nfc) : Default NFC Near-Field Communication (NFC) Support Business functions
- Inventory (Ia.Cl.Model.Business.Nfc) : Inventory NFC Near-Field Communication (NFC) Support Business functions
- Tag (Ia.Cl.Model.Business.Nfc) : TAG NFC Near-Field Communication (NFC) Support Business functions
- Country (Ia.Cl.Models) : Country geographic coordinates and standard UN naming conventions.
- Germany (Ia.Cl.Models) : German cities and states.
- Kuwait (Ia.Cl.Models) : Kuwait provinces, cities, and areas.
- SaudiArabia (Ia.Cl.Models) : Saudi Arabia provinces, cities, and areas.
- Encryption (Ia.Cl.Models.Cryptography) : Symmetric Key Algorithm (Rijndael/AES) to encrypt and decrypt data.
- Default (Ia.Cl.Models.Data) : Support class for data model
- Default (Ia.Cl.Model.Data.Nfc) : Default NFC Near-Field Communication (NFC) Support Data functions
- Inventory (Ia.Cl.Model.Data.Nfc) : Inventory NFC Near-Field Communication (NFC) Support Data functions
- Project (Ia.Cl.Model.Nfc.Data) : Project Support class for NFC data model
- Tag (Ia.Cl.Model.Data.Nfc) : TAG NFC Near-Field Communication (NFC) Support Data functions
- Msmq (Ia.Cl.Model.Db) : MSMQ Database support class. This handles storing and retrieving MSMQ storage.
- MySql (Ia.Model.Db) : MySQL supporting class.
- Object (Ia.Cl.Model.Db) : Object entity class
- Odbc (Ia.Cl.Model.Db) : ODBC support class.
- OleDb (Ia.Cl.Models.Db) : OLEDB support class
- Oracle (Ia.Cl.Models.Db) : Oracle support class.
- Sqlite (Ia.Cl.Models.Db) : SQLite support class.
- SqlServer (Ia.Cl.Models.Db) : SQL Server support class.
- SqlServerCe (Ia.Cs.Db) : SQL Server CE support class.
- Temp (Ia.Cl.Models.Db) : Temporary Storage support class.
- Text (Ia.Cl.Models.Db) : Text Database support class. This handles storing and retrieving text storage.
- Xml (Ia.Cl.Models.Db) : XML Database support class. This handles storing and retrieving XDocument storage.
- Default (Ia.Cl.Models) : General use static class of common functions used by most applications.
- Gv (Ia.Cl.Models.Design) : ASP.NET design related support class.
- File (Ia.Cl.Models) : File manipulation related support class.
- Ftp (Ia.Cl.Models) : A wrapper class for .NET 2.0 FTP
- Location (Ia.Cl.Models.Geography) : Geographic location related function, location, coordinates (latitude, longitude), bearing, degree and radian conversions, CMap value for resolution, and country geographic info-IP from MaxMind.
- GeoIp (Ia.Cl.Models) : GeoIp class of Internet Application project model.
- Gmail (Ia.Cl.Models) : Gmail API support class
- StaticMap (Ia.Cl.Models.Google) : Google support class.
- Drive (Ia.Cl.Models.Google) : Google Drive Directory and File support class.
- Heartbeat (Ia.Cl.Models) : Heartbeat class.
- Hijri (Ia.Cl.Model) : Hijri date handler class.
- Html (Ia.Cl.Models) : Handle HTML encoding, decoding functions.
- HtmlHelper (Ia.Cl.Models) : HtmlHelper for ASP.Net Core.
- Http (Ia.Cl.Models) : Contains functions that relate to posting and receiving data from remote Internet/Intranet pages
- Identity (Ia.Cl.Models) : ASP.NET Identity support class.
- Image (Ia.Cl.Models) : Image processing support class.
- Imap (Ia.Cl.Models) : IMAP Server Support Class
- Language (Ia.Cl.Models) : Language related support class including langauge list and codes.
- Individual (Ia.Cl.Model.Life) : Individual object.
- Main (Ia.Cl.Models.Life) : General base class for life entities. Make it link through delegates to create and update database objects.
- Log (Ia.Cl.Models) : Log file support class.
- Mouse (Ia.Cl.Models) : Windows mouse movements and properties control support class.
- Newspaper (Ia.Cl.Models) : Newspaper and publication display format support class.
- Inventory (Ia.Cl.Model.Nfc) : Inventory NFC Near-Field Communication (NFC) Support Entity functions
- Tag (Ia.Cl.Model.Nfc) : TAG NFC Near-Field Communication (NFC) Support Entity functions
- Ocr (Ia.Cl.Models) : Handles OCR operations.
- Packet (Ia.Cl.Models) : Packet model
- PrayerTime (Ia.Cl.Models) : Prayer times support class.
- Punycode (Ia.Cl.Models) : Punycode support class.
- QrCode (Ia.Cl.Models) : QR Code support class.
- RabbitMq (Ia.Cl.Models) : RabbitMQ Messaging and Streaming Broker Support Class.
- Result (Ia.Cl.Models) : Result support class.
- Seo (Ia.Cl.Models) : Search Engine Optimization (SEO) support class.
- Sms (Ia.Cl.Models) : SMS API service support class.
- Smtp (Ia.Cl.Models) : SMTP Server Support Class
- Socket (Ia.Cl.Models) : Search Engine Optimization (SEO) support class.
- Sound (Ia.Cl.Models) : Sound support class.
- Stopwatch (Ia.Cl.Models) : Stopwatch model
- TagHelper (Ia.Cl.Models) : TagHelper for ASP.Net Core.
- Telnet (Ia.Cl.Models) : Telnet communication support class.
- Trace (Ia.Cl.Models) : Trace function to try to identifiy a user using IP addresses, cookies, and session states.
- Default (Ia.Cl.Models.Ui) : Default support UI class
- Upload (Ia.Cl.Model) : Handle file uploading functions.
- Utf8 (Ia.Cl.Models) : Handle UTF8 issues.
- Weather (Ia.Cl.Models) : Weather class
- Winapi (Ia.Cl.Models) : WINAPI click events support class.
- Word (Ia.Cl.Models) : Word object.
- Twitter (Ia.Cl.Models) : Twitter API support class.
- Xml (Ia.Cl.Models) : XML support class.
- Zip (Ia.Cl.Models) : Zip
- AboutController (Ia.Wa.Controllers) :
- AccountController (Ia.Wa.Controllers) :
- ApplicationController (Ia.Wa.Controllers) :
- ContactController (Ia.Wa.Controllers) :
- HelpController (Ia.Wa.Controllers) :
- HomeController (Ia.Wa.Controllers) :
- IdentityController (Ia.Wa.Controllers) :
- LegalController (Ia.Wa.Controllers) :
- LibraryController (Ia.Wa.Controllers) :
- ManageController (Ia.Wa.Controllers) :
- NetworkController (Ia.Wa.Controllers) :
- NgossController (Ia.Wa.Controllers) :
- PortfolioController (Ia.Wa.Controllers) :
- ServiceController (Ia.Wa.Controllers) :
- ServiceDesignChartController (Ia.Wa.Controllers) :
- ServiceDesignController (Ia.Wa.Controllers) :
- ServiceMAndroidController (Ia.Wa.Controllers) :
- ServiceMController (Ia.Wa.Controllers) :
- ServiceMIosController (Ia.Wa.Controllers) :
- ServiceNfcController (Ia.Wa.Controllers) :
- SmsController (Ia.Wa.Controllers) :
- ExternalLoginConfirmationViewModel (Ia.Wa.Models.AccountViewModels) :
- ForgotPasswordViewModel (Ia.Wa.Models.AccountViewModels) :
- LoginViewModel (Ia.Wa.Models.AccountViewModels) :
- RegisterViewModel (Ia.Wa.Models.AccountViewModels) :
- ResetPasswordViewModel (Ia.Wa.Models.AccountViewModels) :
- SendCodeViewModel (Ia.Wa.Models.AccountViewModels) :
- UseRecoveryCodeViewModel (Ia.Wa.Models.AccountViewModels) :
- VerifyAuthenticatorCodeViewModel (Ia.Wa.Models.AccountViewModels) :
- VerifyCodeViewModel (Ia.Wa.Models.AccountViewModels) :
- Default (Ia.Wa.Models.Business) :
- ContactViewModel (Ia.Wa.Models) :
- Default (Ia.Wa.Models.Data) :
- Portfolio (Ia.Wa.Models.Data) :
- ErrorViewModel (Ia.Wa.Models) :
- AddPhoneNumberViewModel (Ia.Wa.Models.ManageViewModels) :
- ChangePasswordViewModel (Ia.Wa.Models.ManageViewModels) :
- ConfigureTwoFactorViewModel (Ia.Wa.Models.ManageViewModels) :
- DisplayRecoveryCodesViewModel (Ia.Wa.Models.ManageViewModels) :
- FactorViewModel (Ia.Wa.Models.ManageViewModels) :
- IndexViewModel (Ia.Wa.Models.ManageViewModels) :
- ManageLoginsViewModel (Ia.Wa.Models.ManageViewModels) :
- RemoveLoginViewModel (Ia.Wa.Models.ManageViewModels) :
- SetPasswordViewModel (Ia.Wa.Models.ManageViewModels) :
- VerifyPhoneNumberViewModel (Ia.Wa.Models.ManageViewModels) :
- MenuViewModel (Ia.Wa.Models) :
- ParameterViewModel (Ia.Wa.Models) :
- QrCodeViewModel (Ia.Wa.Models) :
- Default (Ia.Wa.Models.Ui) :
- ServiceAndroidApplicationTrekCountry (Ia.Wa.Models.Ui) :
- AuthMessageSender (IdentitySample.Services) :
- DefaultController (Ia.Ngn.Cl.Model.Api.Controller) : Service Suspension API Controller class of Next Generation Network'a (NGN's) model.
- KoranController (Ia.Islamic.Koran.Cl.Model.Api.Controller) : Koran API Controller class of Islamic Koran Reference Network project model.
- PrayerTimeController (Ia.Islamic.Koran.Cl.Model.Api.Controller) : Prayer Time API Controller class of Islamic Koran Reference Network project model.
- ApplicationController (Ia.Islamic.Koran.Belief.Wa.Controllers) :
- HomeController (Ia.Islamic.Koran.Belief.Wa.Controllers) :
- ApplicationViewModel (Ia.Islamic.Koran.Belief.Wa.Models) :
- Business (Ia.Islamic.Koran.Belief.Wa.Models) : Koran Reference Network support functions: Business model
- ErrorViewModel (Ia.Islamic.Koran.Belief.Wa.Models) :
- HomeViewModel (Ia.Islamic.Koran.Belief.Wa.Models) :
- VerseCheckboxViewModel (Ia.Islamic.Koran.Belief.Wa.Models) :
- KoranDbContext (Ia.Islamic.Cl) : Koran Reference Network Data Context
- Default (Ia.Islamic.Cl.Model.Business) : Koran Reference Network Class Library support functions: Business model
- PrayerTime (Ia.Islamic.Koran.Cl.Model.Business) : Prayer Time Business class of Islamic Koran Reference Network project model.
- Word (Ia.Islamic.Cl.Model.Business) : Koran Reference Network Class Library support functions: business model
- Chapter (Ia.Islamic.Cl.Model.Data) : Koran Reference Network Class Library support functions: data model
- Default (Ia.Islamic.Cl.Model.Data) : Koran Reference Network Class Library support functions: Data model
- Koran (Ia.Islamic.Cl.Model.Data) : Koran Reference Network Class Library support functions: data model
- Verse (Ia.Islamic.Cl.Model.Data) : Koran Reference Network Class Library support functions: data model
- VerseTopic (Ia.Islamic.Cl.Model.Data) : Koran Reference Network Class Library support functions: data model
- Chapter (Ia.Islamic.Cl.Model) : Chapter Koran Reference Network Class Library support functions: Entity model
- Koran (Ia.Islamic.Cl.Model) : Koran Koran Reference Network Class Library support functions: Entity model
- Verse (Ia.Islamic.Cl.Model) : Verse Koran Reference Network Class Library support functions: Entity model
- VerseTopic (Ia.Islamic.Cl.Model) : VerseTopic Koran Reference Network Class Library support functions: Entity model
- Word (Ia.Islamic.Cl.Model) : Word Koran Reference Network Class Library support functions: Entity model
- WordVerse (Ia.Islamic.Cl.Model) : WordVerse Koran Reference Network Class Library support functions: Entity model
- Translation (Ia.Islamic.Cl.Model) : Koran Reference Network Class Library support functions: Data model
- VerseTopicUi (Ia.Islamic.Cl.Model.Ui) : Koran Reference Network Class Library support functions: UI model
- HomeController (Ia.Islamic.Koran.Wa.Controllers) :
- KoranController (Ia.Islamic.Koran.Wa.Controllers) :
- Default (Ia.Islamic.Koran.Wa.Model.Business) :
- ErrorViewModel (Ia.Islamic.Koran.Wa.Models) :
- KoranViewModel (Ia.Islamic.Koran.Wa.Models) :
- Default (Ia.Islamic.Koran.Wa.Models.Ui) :
- Default (Ia.Islamic.Koran.Wfa.Model.Business) : Koran Reference Network Windows Form support functions: Business model
- Preparation (Ia.Islamic.Koran.Wfa.Model.Business) : Koran Reference Network Windows Form support functions: Business model
- Default (Ia.Islamic.Koran.Wfa.Model.Data) : Koran Reference Network Windows Form support functions: Data model
- Kanji (Ia.Learning.Cl.Models.Business) : Kanji business support class
- Kanji (Ia.Learning.Cl.Models.Data) : Kanji support class
- Default (Ia.Learning.Cl.Models) : Default data support functions
- MoeBook (Ia.Learning.Cl.Models) : Ministry of Education Books support class for Learning data model.
- Default (Ia.Learning.Cl.Models.Ui) :
- Business (Ia.Learning.Kafiya.Models) : Default business support class.
- Data (Ia.Learning.Kafiya.Models) : Default data support class.
- HomeController (Ia.Learning.Manhag.Wa.Controllers) :
- ErrorViewModel (Ia.Learning.Manhag.Wa.Models) :
- IndexViewModel (Ia.Learning.Manhag.Wa.Models.Home) :
- DefaultController (Ia.Learning.Kanji.Wa.Controllers) :
- Default (Ia.Learning.Kanji.Models.Business) : Default business support class.
- Index (Ia.Learning.Kanji.Wa.Models.Default) :
- IndexViewModel (Ia.Learning.Kanji.Wa.Models.Default) :
- ErrorViewModel (Ia.Learning.Kanji.Wa.Models) :
- Default (Ia.Simple.Cl.Models.Business.SmartDeals) :
- Category (Ia.Simple.Cl.Models.Data.SmartDeals) :
- Default (Ia.Simple.Cl.Models.Data.SmartDeals) :
- Product (Ia.Simple.Cl.Models.Data.SmartDeals) :
- HomeController (Ia.Statistics.Cdn.Wa.Controllers) :
- Default (Ia.Statistics.Cl.Models.Boutiqaat) : Structure of the boutiqaat.com website.
- Category (Ia.Statistics.Cl.Models) :
- Default (Ia.Statistics.Cl.Models.Dabdoob) : Structure of the dabdoob.com website.
- Default (Ia.Statistics.Cl.Models) :
- Default (Ia.Statistics.Cl.Models.EnglishBookshop) : Structure of the theenglishbookshop.com website.
- Default (Ia.Statistics.Cl.Models.FantasyWorldToys) : Structure of the fantasyworldtoys.com website.
- Default (Ia.Statistics.Cl.Models.HsBookstore) : Structure of the hsbookstore.com website.
- Default (Ia.Statistics.Cl.Models.LuluHypermarket) : Structure of the lulutypermarket.com website.
- Default (Ia.Statistics.Cl.Models.Natureland) : Structure of the natureland.net website.
- Product (Ia.Statistics.Cl.Models) :
- ProductPriceSpot (Ia.Statistics.Cl.Models) :
- ProductPriceStockQuantitySold (Ia.Statistics.Cl.Models) :
- ProductStockSpot (Ia.Statistics.Cl.Models) :
- Site (Ia.Statistics.Cl.Models) : Site support class for Optical Fiber Network (OFN) data model.
- Default (Ia.Statistics.Cl.Models.SultanCenter) : Structure of the sultan-center.com website.
- Default (Ia.Statistics.Cl.Models.Taw9eel) : Structure of the taw9eel.com website.
- WebDriverExtensions () :
- AboutController (Ia.Statistics.Wa.Controllers) :
- ContactController (Ia.Statistics.Wa.Controllers) :
- HelpController (Ia.Statistics.Wa.Controllers) :
- HomeController (Ia.Statistics.Wa.Controllers) :
- IdentityController (Ia.Statistics.Wa.Controllers) :
- LegalController (Ia.Statistics.Wa.Controllers) :
- ListController (Ia.Statistics.Wa.Controllers) :
- SearchController (Ia.Statistics.Wa.Controllers) :
- ServiceController (Ia.Statistics.Wa.Controllers) :
- Default (Ia.Statistics.Wa.Models.Business) :
- ContactViewModel (Ia.Statistics.Wa.Models) :
- Default (Ia.Statistics.Wa.Models.Data) :
- ErrorViewModel (Ia.Statistics.Wa.Models) :
- Index (Ia.Statistics.Wa.Models.Home) :
- IndexViewModel (Ia.Statistics.Wa.Models.Home) :
- ProductViewModel (Ia.Statistics.Wa.Models.List) :
- Default (Ia.Statistics.Wa.Models.Ui) :
- ServiceAndroidApplicationTrekCountry (Ia.Statistics.Wa.Models.Ui) :
- DefaultController (Ia.TentPlay.Api.Wa.Controllers) : Trek API Controller class of Tent Play's model.
- ApplicationDbContext (Ia.TentPlay) :
- Db (Ia.TentPlay) :
- Default (Ia.TentPlay.Cl.Models.Business) : Support class for TentPlay business model
- Default (Ia.TentPlay.Cl.Models.Business.Trek) : Support class for TentPlay Trek business model
- Feature (Ia.TentPlay.Cl.Models.Business.Trek) : Feature class for TentPlay Trek business model
- FeatureClass (Ia.TentPlay.Cl.Models.Business.Trek) : FeatureClass Support class for TentPlay Trek business model
- FeatureClassDistanceToCapital (Ia.TentPlay.Cl.Models.Business.Trek) : FeatureClassDistanceToCapital Support class for TentPlay business model
- FeatureDesignation (Ia.TentPlay.Cl.Models.Business.Trek) : FeatureClass Support class for TentPlay Trek business model
- FeatureName (Ia.TentPlay.Cl.Models.Business.Trek) : Support class for TentPlay Trek business model
- CompanyInformation (Ia.TentPlay.Cl.Models.Data) : CompanyInformation Support class for TentPlay data model
- Default (Ia.TentPlay.Cl.Models.Data) : Support class for TentPlay data model
- ApplicationInformation (Ia.TentPlay.Cl.Models.Data.Trek) : ApplicationInformation Support class for TentPlay Trek data model
- Default (Ia.TentPlay.Cl.Models.Data.Trek) : Default class for TentPlay Trek data model
- Feature (Ia.TentPlay.Cl.Models.Data.Trek) : Feature Support class for TentPlay entity data
- FeatureClass (Ia.TentPlay.Cl.Models.Data.Trek) : FeatureClass Support class for TentPlay Trek business model
- FeatureDesignation (Ia.TentPlay.Cl.Models.Data.Trek) : FeatureDesignation Support class for TentPlay Trek data model
- NgaCountryWaypoint (Ia.TentPlay.Cl.Models.Data.Trek) : NgaCountryWaypoint Support class for TentPlay Waypoint entity data
- Score (Ia.TentPlay.Cl.Models.Memorise) : Score entity functions
- Feature (Ia.TentPlay.Cl.Models.Trek) : Feature Support class for TentPlay entity model
- FeatureDesignation (Ia.TentPlay.Cl.Models.Trek) : FeatureDesignation Support class for TentPlay Trek entity model
- ApplicationInformation (Ia.TentPlay.Cl.Models.Memorise) : ApplicationInformation Support class for TentPlay Memorise model
- Default (Ia.TentPlay.Cl.Models.Memorise) : Default class for TentPlay Memorise data model
- German (Ia.TentPlay.Cl.Models.Memorise) : German class
- Kana (Ia.TentPlay.Cl.Models.Memorise) : Kana class
- Kanji (Ia.TentPlay.Cl.Models.Memorise) : Kanji class
- Math (Ia.TentPlay.Cl.Models.Memorise) : Math Class
- MorseCode (Ia.TentPlay.Cl.Models.Memorise) : Morse code class
- PhoneticAlphabet (Ia.TentPlay.Cl.Models.Memorise) : Phonetic Alphabet
- Russian (Ia.TentPlay.Cl.Models.Memorise) : Russian class
- Test (Ia.TentPlay.Cl.Models.Memorise) : Test Class
- Default (Ia.TentPlay.Cl.Models.Ui.Trek) : Default class for TentPlay Trek UI model
- AboutController (Ia.TentPlay.Wa.Controllers) :
- ContactController (Ia.TentPlay.Wa.Controllers) :
- HelpController (Ia.TentPlay.Wa.Controllers) :
- HomeController (Ia.TentPlay.Wa.Controllers) :
- LegalController (Ia.TentPlay.Wa.Controllers) :
- MemoriseController (Ia.TentPlay.Wa.Controllers) :
- TradeController (Ia.TentPlay.Wa.Controllers) :
- TrekController (Ia.TentPlay.Wa.Controllers) :
- ErrorViewModel (Ia.TentPlay.Wa.Models) :
- TrekViewModel (Ia.TentPlay.Wa.Models) :
- Default (Ia.TentPlay.Wa.Models.Ui) :