-
Notifications
You must be signed in to change notification settings - Fork 16
/
Create_o2_AspNet_Page_Objects.aspx
66 lines (56 loc) · 2.06 KB
/
Create_o2_AspNet_Page_Objects.aspx
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
<%@ Page Language="C#"%>
<% @Import Namespace="O2.XRules.Database.Languages_and_Frameworks.DotNet" %>
<% @Import Namespace="O2.Kernel" %>
<% @Import Namespace="O2.Kernel.ExtensionMethods" %>
<% @Import Namespace="O2.DotNetWrappers.ExtensionMethods" %>
<% @Import Namespace="O2.External.SharpDevelop.ExtensionMethods" %>
<% @Import Namespace="O2.Views.ASCX.ExtensionMethods" %>
<html>
<head>
<title>Create O2 AspNet_Page objects</title>
</head>
<body>
<h1> Creating AspNnet_Page objects</h1>
for current website
<%
Response.Flush();
//O2Gui.open<System.Windows.Forms.Panel>("Util - LogViewer", 400,140).add_LogViewer().bringToFront();
var binFolder = AppDomain.CurrentDomain.RelativeSearchPath;
var targetFolder = binFolder.pathCombine("_Saved_AspNetPage_Objects").createDir();
Response.Write("<h3>Files will be saved at: {0}</h3>".format(targetFolder));
//show.info(Request);
var rootFolder = AppDomain.CurrentDomain.BaseDirectory;
var server = "localhost";
Action<string> processPage =
(page)=>{
"Processing page: {0}".info(page);
try
{
var aspNetPage = new AspNet_Page(rootFolder, "/", server);
aspNetPage.Store_AspNet_SourceCode = true;
aspNetPage.Store_Compiled_AspNet_SourceCode = true;
aspNetPage.parseAspNetPage(page);
var targetPage = targetFolder.pathCombine(page.safeFileName()+".xml");
if (aspNetPage.saveAs(targetPage))
Response.Write("processed: {0}<br/>".format(page));
}
catch(Exception ex)
{
ex.log();
Response.Write("ERROR processing: {0} : {1} <br/>".format(page, ex.Message));
}
};
foreach(var file in rootFolder.files(true, "*.aspx", "*.ascx","*.asmx"))
{
var virtualPath = "/" + file.remove(rootFolder).replace("\\","/");
processPage(virtualPath);
Response.Flush();
}
var pageName = "/a.aspx";
//processPage(pageName);
//PublicDI.log.showMessageBox("click 2");
//Response.Write(AppDomain.CurrentDomain.RelativeSearchPath);
%>
<hr/>
</body>
</body>