This repository has been archived by the owner on Jan 18, 2024. It is now read-only.
/
Program.cs
90 lines (79 loc) · 3.53 KB
/
Program.cs
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
using System;
using System.IO;
using System.Reflection;
using POCOGenerator;
namespace FileStreamDemo
{
class Program
{
static void Main()
{
string fileName = "AdventureWorks2014.cs";
string filePath = Path.Combine(Path.GetDirectoryName(Assembly.GetExecutingAssembly().Location), fileName);
Console.WriteLine("File Name: {0}", fileName);
Console.WriteLine("File Path: {0}", filePath);
using (FileStream stream = File.Open(filePath, FileMode.Create))
{
IGenerator generator = GeneratorFactory.GetGenerator(stream);
try { generator.Settings.Connection.ConnectionString = File.ReadAllText("ConnectionString.txt"); } catch { }
if (string.IsNullOrEmpty(generator.Settings.Connection.ConnectionString))
generator.Settings.Connection.ConnectionString = @"Data Source=(LocalDB)\MSSQLLocalDB;Initial Catalog=AdventureWorks2014;Integrated Security=True";
generator.Settings.DatabaseObjects.Tables.IncludeAll = true;
generator.Settings.POCO.CommentsWithoutNull = true;
generator.Settings.ClassName.IncludeSchema = true;
generator.Settings.ClassName.SchemaSeparator = "_";
generator.Settings.ClassName.IgnoreDboSchema = true;
GeneratorResults results = generator.Generate();
PrintError(results, generator.Error);
}
if (File.Exists(filePath))
{
long length = new FileInfo(filePath).Length;
Console.WriteLine("File {0} was saved successfully", fileName);
Console.WriteLine("File size is {0} bytes", length);
Console.WriteLine();
Console.WriteLine("Delete file? [y/n]");
ConsoleKeyInfo key = Console.ReadKey();
if (key.KeyChar == 'y' || key.KeyChar == 'Y')
{
Console.WriteLine();
Console.WriteLine("Deleting file...");
try
{
File.Delete(filePath);
Console.WriteLine("File {0} was deleted", fileName);
}
catch (Exception ex)
{
Console.WriteLine("Error: Filed to delete File {0}", fileName);
Console.WriteLine(ex.Message);
}
}
}
else
{
Console.WriteLine("Error: File {0} wasn't saved", fileName);
}
Console.WriteLine();
Console.WriteLine("Press any key to continue . . .");
Console.ReadKey(true);
}
private static void PrintError(GeneratorResults results, Exception Error)
{
bool isError = (results & GeneratorResults.Error) == GeneratorResults.Error;
bool isWarning = (results & GeneratorResults.Warning) == GeneratorResults.Warning;
if (results != GeneratorResults.None)
Console.WriteLine();
if (isError)
Console.WriteLine("Error Result: {0}", results);
else if (isWarning)
Console.WriteLine("Warning Result: {0}", results);
if (Error != null)
{
Console.WriteLine("Error: {0}", Error.Message);
Console.WriteLine("Error Stack Trace:");
Console.WriteLine(Error.StackTrace);
}
}
}
}