Public general use code classes and xml files that we've compiled and used over the years:
Google Drive Directory and File support class.
1: using global::Google.Apis.Auth.OAuth2;
2: using global::Google.Apis.Download;
3: using global::Google.Apis.Drive.v3.Data;
4: using global::Google.Apis.Services;
5: using global::Google.Apis.Util.Store;
6: using Google.Apis.Drive.v3;
7: using System;
8: using System.Collections.Generic;
9: using System.IO;
10: using System.Linq;
11: using System.Text;
12: using System.Threading;
13:
14: namespace Ia.Cl.Models.Google
15: {
16: ////////////////////////////////////////////////////////////////////////////
17: /// <summary publish="true">
18: /// Google Drive Directory and File support class.
19: /// </summary>
20: /// <remarks>
21: /// Copyright � 2019-2020 Jasem Y. Al-Shamlan (info@ia.com.kw), Integrated Applications - Kuwait. All Rights Reserved.
22: ///
23: /// 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
24: /// the Free Software Foundation, either version 3 of the License, or (at your option) any later version.
25: ///
26: /// This program is distributed in the hope that it will be useful, but WITHOUT ANY WARRANTY; without even the implied warranty of
27: /// MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU General Public License for more details.
28: ///
29: /// You should have received a copy of the GNU General Public License along with this library. If not, see http://www.gnu.org/licenses.
30: ///
31: /// Copyright notice: This notice may not be removed or altered from any source distribution.
32: /// </remarks>
33:
34: public static class Drive
35: {
36: // If modifying these scopes, delete your previously saved credentials at credentials.json and regenerate them on Google API website.
37: // Drag credentials.json(downloaded in Step 1) into your Visual Studio Solution Explorer. Select credentials.json, and then go to the Properties window and set the Copy to Output Directory field to Copy always.
38:
39: private static readonly string[] scopes = {
40: DriveService.Scope.Drive,
41: DriveService.Scope.DriveFile,
42: DriveService.Scope.DriveAppdata,
43: DriveService.Scope.DriveMetadata,
44: DriveService.Scope.DriveScripts }; //.DriveReadonly };
45:
46: private static readonly string applicationName = "Drive API";
47:
48: ////////////////////////////////////////////////////////////////////////////
49:
50: /// <summary>
51: ///
52: /// </summary>
53: public static class Directory
54: {
55: ////////////////////////////////////////////////////////////////////////////
56:
57: /// <summary>
58: ///
59: /// </summary>
60: public static global::Google.Apis.Drive.v3.Data.File CreateDirectory(string directoryName)
61: {
62: global::Google.Apis.Drive.v3.Data.File file, createRequestFile;
63: global::Google.Apis.Drive.v3.FilesResource.CreateRequest createRequest;
64:
65: var driveService = CreateDriveService();
66:
67: file = new global::Google.Apis.Drive.v3.Data.File
68: {
69: Name = directoryName,
70: Description = string.Empty,
71: MimeType = "application/vnd.google-apps.folder"
72: };
73:
74: createRequest = driveService.Files.Create(file);
75: createRequest.Fields = "id";
76: createRequestFile = createRequest.Execute();
77:
78: return createRequestFile;
79: }
80:
81: ////////////////////////////////////////////////////////////////////////////
82:
83: /// <summary>
84: ///
85: /// </summary>
86: public static global::Google.Apis.Drive.v3.Data.File CreateDirectory(string directoryName, string parentDirectoryName)
87: {
88: global::Google.Apis.Drive.v3.Data.File file, createRequestFile;
89: global::Google.Apis.Drive.v3.FilesResource.CreateRequest createRequest;
90:
91: var list = DriveServiceFileList();
92:
93: var parentDirectory = (from f in list where f.Name == parentDirectoryName && f.MimeType == "application/vnd.google-apps.folder" select f).SingleOrDefault();
94:
95: var driveService = CreateDriveService();
96:
97: file = new global::Google.Apis.Drive.v3.Data.File
98: {
99: Name = directoryName,
100: Description = string.Empty,
101: MimeType = "application/vnd.google-apps.folder",
102: Parents = new List<string> { parentDirectory.Id }
103: };
104:
105: createRequest = driveService.Files.Create(file);
106: createRequest.Fields = "id";
107: createRequestFile = createRequest.Execute();
108:
109: return createRequestFile;
110: }
111:
112: ////////////////////////////////////////////////////////////////////////////
113:
114: /// <summary>
115: ///
116: /// </summary>
117: public static List<string> GetFiles()
118: {
119: List<string> fileList;
120:
121: var list = DriveServiceFileList();
122:
123: // get only files
124: fileList = (from f in list where f.MimeType != "application/vnd.google-apps.folder" select f.Name).ToList();
125:
126: return fileList;
127: }
128:
129: ////////////////////////////////////////////////////////////////////////////
130:
131: /// <summary>
132: ///
133: /// </summary>
134: public static List<string> GetDirectories()
135: {
136: List<string> directoryList;
137:
138: var list = DriveServiceFileList();
139:
140: directoryList = (from f in list where f.MimeType == "application/vnd.google-apps.folder" select f.Name).ToList();
141:
142: return directoryList;
143: }
144:
145: ////////////////////////////////////////////////////////////////////////////
146:
147: /// <summary>
148: ///
149: /// </summary>
150: public static bool Exists(string name)
151: {
152: bool exists;
153: List<string> directoryList;
154:
155: directoryList = GetDirectories();
156:
157: exists = directoryList.Count > 0 && directoryList.Contains(name);
158:
159: return exists;
160: }
161:
162: ////////////////////////////////////////////////////////////////////////////
163:
164: /// <summary>
165: ///
166: /// </summary>
167: public static void Delete(string directoryName)
168: {
169: var list = DriveServiceFileList();
170:
171: var file = (from f in list where f.Name == directoryName && f.MimeType == "application/vnd.google-apps.folder" orderby f.CreatedTime ascending select f).FirstOrDefault();
172:
173: var driveService = CreateDriveService();
174:
175: try
176: {
177: // Initial validation.
178: if (driveService == null) throw new ArgumentNullException("driveService");
179:
180: if (file == null) throw new ArgumentNullException(file.Id);
181:
182: // Make the request.
183: driveService.Files.Delete(file.Id).Execute();
184: }
185: catch (Exception ex)
186: {
187: throw new Exception("DirectoryDelete() failed: ", ex);
188: }
189: }
190:
191: ////////////////////////////////////////////////////////////////////////////
192:
193: /// <summary>
194: ///
195: /// </summary>
196: public static bool Move(string sourceDirectoryName, string destinationDirectoryName)
197: {
198: string sourceDirectoryFileId, destinationDirectoryFileId;
199:
200: var list = DriveServiceFileList();
201:
202: sourceDirectoryFileId = (from f in list where f.Name == sourceDirectoryName && f.MimeType == "application/vnd.google-apps.folder" orderby f.CreatedTime ascending select f.Id).FirstOrDefault();
203:
204: destinationDirectoryFileId = (from f in list where f.Name == destinationDirectoryName && f.MimeType == "application/vnd.google-apps.folder" orderby f.CreatedTime ascending select f.Id).FirstOrDefault();
205:
206: return FileMoveById(sourceDirectoryFileId, destinationDirectoryFileId);
207: }
208:
209: ////////////////////////////////////////////////////////////////////////////
210: ////////////////////////////////////////////////////////////////////////////
211: }
212:
213: ////////////////////////////////////////////////////////////////////////////
214: ////////////////////////////////////////////////////////////////////////////
215:
216:
217:
218:
219:
220: ////////////////////////////////////////////////////////////////////////////
221: ////////////////////////////////////////////////////////////////////////////
222:
223: ////////////////////////////////////////////////////////////////////////////
224:
225: /// <summary>
226: ///
227: /// </summary>
228: public static class File
229: {
230: ////////////////////////////////////////////////////////////////////////////
231:
232: /// <summary>
233: ///
234: /// </summary>
235: public static global::Google.Apis.Drive.v3.Data.File Create(string fileName)
236: {
237: global::Google.Apis.Drive.v3.Data.File file, createRequestFile;
238: global::Google.Apis.Drive.v3.FilesResource.CreateRequest createRequest;
239:
240: var driveService = CreateDriveService();
241:
242: file = new global::Google.Apis.Drive.v3.Data.File()
243: {
244: Name = fileName,
245: Description = string.Empty,
246: MimeType = MimeTypes.GetMimeType(fileName)
247: };
248:
249: createRequest = driveService.Files.Create(file);
250: createRequest.Fields = "id";
251: createRequestFile = createRequest.Execute();
252:
253: return createRequestFile;
254: }
255:
256: ////////////////////////////////////////////////////////////////////////////
257:
258: /// <summary>
259: ///
260: /// </summary>
261: public static bool Exists(string fileName)
262: {
263: bool exists;
264: List<string> list;
265:
266: list = Directory.GetFiles();
267:
268: exists = list.Count > 0 && list.Contains(fileName);
269:
270: return exists;
271: }
272:
273: ////////////////////////////////////////////////////////////////////////////
274:
275: /// <summary>
276: ///
277: /// </summary>
278: public static void Delete(string fileName)
279: {
280: var list = DriveServiceFileList();
281:
282: var file = (from f in list where f.Name == fileName && f.MimeType != "application/vnd.google-apps.folder" orderby f.CreatedTime ascending select f).FirstOrDefault();
283:
284: var driveService = CreateDriveService();
285:
286: try
287: {
288: // Initial validation.
289: if (driveService == null) throw new ArgumentNullException("driveService");
290:
291: if (file == null) throw new ArgumentNullException(file.Id);
292:
293: // Make the request.
294: driveService.Files.Delete(file.Id).Execute();
295: }
296: catch (Exception ex)
297: {
298: throw new Exception("FileDelete() failed: ", ex);
299: }
300: }
301:
302: ////////////////////////////////////////////////////////////////////////////
303:
304: /// <summary>
305: ///
306: /// </summary>
307: public static void WriteAllText(string fileName, string content)
308: {
309: string fileId;
310: global::Google.Apis.Drive.v3.Data.File file;
311: global::Google.Apis.Drive.v3.FilesResource.UpdateMediaUpload updateMediaUpload;
312: global::Google.Apis.Drive.v3.FilesResource.CreateMediaUpload createMediaUpload;
313:
314: var list = DriveServiceFileList();
315:
316: file = (from f in list where f.Name == fileName && f.MimeType != "application/vnd.google-apps.folder" orderby f.CreatedTime ascending select f).FirstOrDefault();
317: fileId = file.Id;
318:
319: var driveService = CreateDriveService();
320:
321: byte[] byteArray = Encoding.ASCII.GetBytes(content);
322:
323: if (file == null)
324: {
325: file = new global::Google.Apis.Drive.v3.Data.File()
326: {
327: Name = fileName,
328: Description = string.Empty,
329: MimeType = MimeTypes.GetMimeType(fileName)
330: // Parents = new List<string> { _parent };
331: };
332:
333: using (var memoryStream = new System.IO.MemoryStream(byteArray))
334: {
335: createMediaUpload = driveService.Files.Create(file, memoryStream, file.MimeType);
336: createMediaUpload.Fields = "id";
337: createMediaUpload.Upload();
338: }
339: }
340: else
341: {
342: file = new global::Google.Apis.Drive.v3.Data.File();
343:
344: using (var memoryStream = new System.IO.MemoryStream(byteArray))
345: {
346: updateMediaUpload = driveService.Files.Update(file, fileId, memoryStream, file.MimeType);
347: updateMediaUpload.Upload();
348: }
349: }
350: }
351:
352: ////////////////////////////////////////////////////////////////////////////
353:
354: /// <summary>
355: ///
356: /// </summary>
357: public static string ReadAllText(string fileName)
358: {
359: string content;
360: global::Google.Apis.Drive.v3.FilesResource.GetRequest getRequest;
361:
362: var list = DriveServiceFileList();
363:
364: var file = (from f in list where f.Name == fileName && f.MimeType != "application/vnd.google-apps.folder" orderby f.CreatedTime ascending select f).FirstOrDefault();
365:
366: var driveService = CreateDriveService();
367:
368: getRequest = driveService.Files.Get(file.Id);
369: getRequest.Execute();
370:
371: using (MemoryStream memoryStream = new MemoryStream())
372: {
373: getRequest.Download(memoryStream);
374:
375: memoryStream.Position = 0;
376:
377: using (System.IO.StreamReader streamReader = new StreamReader(memoryStream, System.Text.Encoding.UTF8, true))
378: {
379: content = streamReader.ReadToEnd();
380: }
381: }
382:
383: return content;
384: }
385:
386: ////////////////////////////////////////////////////////////////////////////
387:
388: /// <summary>
389: ///
390: /// </summary>
391: public static void DownloadFile(string fileName, string downloadPath)
392: {
393: string filePath, fileName2;
394: global::Google.Apis.Drive.v3.FilesResource.GetRequest getRequest;
395: MemoryStream memoryStream;
396:
397: var list = DriveServiceFileList();
398:
399: var file = (from f in list where f.Name == fileName && f.MimeType != "application/vnd.google-apps.folder" orderby f.CreatedTime ascending select f).FirstOrDefault();
400:
401: var driveService = CreateDriveService();
402:
403: getRequest = driveService.Files.Get(file.Id);
404:
405: fileName2 = getRequest.Execute().Name;
406: filePath = System.IO.Path.Combine(downloadPath, fileName2);
407:
408: memoryStream = new MemoryStream();
409:
410: getRequest.Download(memoryStream);
411:
412: SaveStream(memoryStream, filePath);
413: }
414:
415: ////////////////////////////////////////////////////////////////////////////
416:
417: /// <summary>
418: ///
419: /// </summary>
420: private static void SaveStream(MemoryStream memoryStream, string filePath)
421: {
422: using (System.IO.FileStream fileStream = new FileStream(filePath, FileMode.Create, FileAccess.ReadWrite))
423: {
424: memoryStream.WriteTo(fileStream);
425: }
426: }
427:
428: ////////////////////////////////////////////////////////////////////////////
429:
430: /// <summary>
431: ///
432: /// </summary>
433: public static void UploadFile(string filePath, string directoryName)
434: {
435: global::Google.Apis.Drive.v3.FilesResource.CreateMediaUpload createMediaUpload;
436:
437: var list = DriveServiceFileList();
438:
439: var directory = (from f in list where f.Name == directoryName && f.MimeType == "application/vnd.google-apps.folder" orderby f.CreatedTime ascending select f).FirstOrDefault();
440:
441: var driveService = CreateDriveService();
442:
443: if (filePath != null)
444: {
445: var file = new global::Google.Apis.Drive.v3.Data.File()
446: {
447: Name = Path.GetFileName(filePath),
448: Description = string.Empty,
449: MimeType = MimeTypes.GetMimeType(filePath),
450: Parents = new List<string> { directory.Id }
451: };
452:
453: using (var fileStream = new System.IO.FileStream(filePath, System.IO.FileMode.Open))
454: {
455: createMediaUpload = driveService.Files.Create(file, fileStream, file.MimeType);
456: createMediaUpload.Fields = "id";
457: createMediaUpload.Upload();
458: }
459: }
460: }
461:
462: ////////////////////////////////////////////////////////////////////////////
463:
464: /// <summary>
465: ///
466: /// </summary>
467: public static bool Move(string sourceFileName, string destinationFileName)
468: {
469: string sourceFileId, destinationFileId;
470:
471: var list = DriveServiceFileList();
472:
473: sourceFileId = (from f in list where f.Name == sourceFileName && f.MimeType != "application/vnd.google-apps.folder" orderby f.CreatedTime ascending select f.Id).FirstOrDefault();
474:
475: destinationFileId = (from f in list where f.Name == destinationFileName && f.MimeType != "application/vnd.google-apps.folder" orderby f.CreatedTime ascending select f.Id).FirstOrDefault();
476:
477: return FileMoveById(sourceFileId, destinationFileId);
478: }
479:
480: ////////////////////////////////////////////////////////////////////////////
481: ////////////////////////////////////////////////////////////////////////////
482: }
483:
484: ////////////////////////////////////////////////////////////////////////////
485:
486: /// <summary>
487: ///
488: /// </summary>
489: private static bool FileMoveById(string sourceFileId, string destinationFileId)
490: {
491: // Todo: NotImplementedException()
492:
493: throw new NotImplementedException();
494:
495: /*
496: bool isSuccessful;
497: string previousParents;
498: global::Google.Apis.Drive.v3.Data.File file;
499: global::Google.Apis.Drive.v3.FilesResource.GetRequest getRequest;
500: global::Google.Apis.Drive.v3.FilesResource.UpdateRequest updateRequest;
501:
502: var driveService = CreateDriveService();
503:
504: // Retrieve the existing parents to remove
505: getRequest = driveService.Files.Get(sourceFileId);
506: getRequest.Fields = "parents";
507: file = getRequest.Execute();
508: previousParents = string.Join(",", file.Parents);
509:
510: // Move the file to the new folder
511: updateRequest = driveService.Files.Update(new global::Google.Apis.Drive.v3.Data.File(), sourceFileId);
512: updateRequest.Fields = "id, parents";
513: updateRequest.AddParents = destinationFileId;
514: updateRequest.RemoveParents = previousParents;
515:
516: file = updateRequest.Execute();
517:
518: isSuccessful = (file != null);
519:
520: return isSuccessful;
521: */
522: }
523:
524: ////////////////////////////////////////////////////////////////////////////
525: ////////////////////////////////////////////////////////////////////////////
526:
527: /// <summary>
528: /// Create Drive API service.
529: /// </summary>
530: private static global::Google.Apis.Drive.v3.DriveService CreateDriveService()
531: {
532: string credentialsJsonFilePath, credentialPath;
533: UserCredential userCredential;
534:
535: //credentialsJsonFilePath = @"credentials.json";
536: credentialsJsonFilePath = Ia.Cl.Models.Default.AbsolutePath() + "credentials.json";
537: //credentialsJsonFilePath = System.Web.Hosting.HostingEnvironment.MapPath(@"~/credentials.json");
538:
539: //credentialsJsonFilePath = @"C:\Users\Jasem\Documents\Visual Studio 2022\Projects\Integrated Applications\ia.com.kw\credentials.json";
540:
541: //credentialsJsonFilePath = HttpContext.Current.Server.MapPath(@"~/credentials.json");
542:
543: using (var fileStream = new FileStream(credentialsJsonFilePath, FileMode.Open, FileAccess.Read))
544: {
545: // The file token.json stores the user's access and refresh tokens, and is created automatically when the authorization flow completes for the first time.
546: credentialPath = "token.json";
547:
548: userCredential = GoogleWebAuthorizationBroker.AuthorizeAsync(GoogleClientSecrets.Load(fileStream).Secrets, scopes, "user", CancellationToken.None, new FileDataStore(credentialPath, true)).Result;
549:
550: //Console.WriteLine("Credential file saved to: " + credPath);
551: }
552:
553: // Create Drive API service.
554: var driveService = new DriveService(new BaseClientService.Initializer()
555: {
556: HttpClientInitializer = userCredential,
557: ApplicationName = applicationName,
558: });
559:
560: return driveService;
561: }
562:
563: ////////////////////////////////////////////////////////////////////////////
564:
565: /// <summary>
566: ///
567: /// </summary>
568: private static IList<global::Google.Apis.Drive.v3.Data.File> DriveServiceFileList()
569: {
570: global::Google.Apis.Drive.v3.FilesResource.ListRequest listRequest;
571:
572: var driveService = CreateDriveService();
573:
574: listRequest = driveService.Files.List();
575: listRequest.PageSize = 10;
576: listRequest.Fields = "nextPageToken, files(*)";
577:
578: IList<global::Google.Apis.Drive.v3.Data.File> list = listRequest.Execute().Files;
579:
580: return list;
581: }
582:
583: ////////////////////////////////////////////////////////////////////////////
584: ////////////////////////////////////////////////////////////////////////////
585: }
586: }
- 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) :