Я пытаюсь выполнить свой код через файл .aspx.Но это показывает мне эту ошибку:
Ошибка сервера в приложении '/'.
Описание: на сервере произошла ошибка приложения.Текущие пользовательские настройки ошибок для этого приложения не позволяют удаленно просматривать подробности ошибки приложения (из соображений безопасности).Однако его могут просматривать браузеры, работающие на локальном сервере.Подробно: Чтобы детали этого конкретного сообщения об ошибке можно было просматривать на удаленных компьютерах, создайте тег в файле конфигурации «web.config», расположенном в корневом каталоге текущего веб-приложения.Для этого тега должен быть установлен атрибут «mode» «Off».
У меня нет возможности сейчас просматривать ошибки сервера или изменять его настройки.
Здесьмой код:
<%@ Page Language="C#"%>
<%@ import Namespace="System"%>
<%@ import Namespace="System.IO"%>
<%@ import Namespace="System.Linq"%>
<script runat="server">
public void ReadPublishTxt()
{
using (StreamReader sr = File.OpenText(
"...\\properties.txt"))
{
string line;
while ((line = sr.ReadLine()) != null)
{
// Divide all '_'
string[] lineParts = line.Split('_');
// Main parameters
string url = "";
string title = "";
string initCode = "";
string og_desc = "";
string desc = "";
string og_img = "";
// If length == 4, and last index type = string, it means category
// If length == 4, and last index type = int, it means series
// If length == 5, it means section
// Category
if((lineParts.Length == 4) && (lineParts[3].All(char.IsDigit) == false))
{
url = "...properties/" + lineParts[0] + ".html";
title = lineParts[1] + " | ";
initCode = "let startPageLink = \"PublishPageContent\"; var categoryNameStart = '" + lineParts[3] + "'; var seriesIds = ''; var infoId = '';";
og_desc = " | " + lineParts[2];
desc = " " + lineParts[2];
}
// Series
else if ((lineParts.Length == 4) && (lineParts[3].All(char.IsDigit) == true))
{
url = "...properties/" + lineParts[0] + ".html";
title = lineParts[1] + "";
initCode = "let startPageLink = \"PublishPageContent\"; var categoryNameStart = ''; var seriesIds = '" + lineParts[3] + "'; var infoId = '';";
og_desc = " | " + lineParts[2];
desc = " " + lineParts[2];
og_img = "...properties/images/meta_images/" + lineParts[3] + ".png";
}
// Section
else if (lineParts.Length == 5)
{
url = "...properties/" + lineParts[0] + ".html";
title = lineParts[1] + "";
initCode = "let startPageLink = \"PublishPageContent\"; var categoryNameStart = ''; var seriesIds = '" + lineParts[4] + "'; var infoId = '" + lineParts[3] + "';";
og_desc = "| " + lineParts[2];
desc = "| " + lineParts[2];
og_img = "...properties/images/meta_images/" + lineParts[3] + ".png";
}
// Edit html file with correct data
string Html = CorrectHtml(url, title, initCode, og_desc, desc, og_img);
// Create html file
File.WriteAllText("...properties\\" + lineParts[0] + ".html", Html);
}
}
}
private string CorrectHtml(string url, string title, string initCode, string og_desc, string desc, string og_img)
{
string Html = "<html lang=\"en\">" +
"<head>" +
"<meta http-equiv=\"Content-Type\" content=\"text/html; charset=utf-8\"/>" +
"<meta name=\"viewport\" content=\"width=device-width, initial-scale=1.0, minimum-scale=1.0, maximum-scale=1.0, user-scalable=0\" />" +
"<meta property=\"og:title\" content=\"\"/>" +
"<meta property=\"og:description\" content=\"/*OG_DESCRIPTION*/\"/>" +
"<meta property=\"og:image\" content=\"'/*OG_IMAGE*/'\"/>" +
"<meta property=\"og:type\" content=\"website\"/>" +
"<meta property=\"og:site_name\" content=\"\"/>" +
"<meta property=\"og:url\" content=\"OG_URL\"/>" +
"<meta name=\"description\" content=\"/*DESCRIPTION_DESC*/\"/>" +
"<meta name=\"twitter:site\" content=\"\"/>" +
"<title>PAGE_TITLE</title>" +
"<script>/*PAGE_INIT*/</script>" +
"<link rel=\"stylesheet\" href=\"/.../style.css\" media=\"all\" id=\"styleLink\" />" +
"<script src=\"...properties/scripts.js\"></script>" +
"<link rel=\"icon\" href=\"...properties/images/\">" +
"</head>" +
"<body>" +
"<div id=\"main\" class=\\">" +
"</div><!-- /#main -->" +
"</body>" +
"</html>";
Html = Html.Replace("OG_URL", url).Replace("PAGE_TITLE", title).Replace("/*PAGE_INIT*/", initCode).Replace("/*OG_DESCRIPTION*/", og_desc)
.Replace("/*DESCRIPTION_DESC*/", desc).Replace("/*OG_IMAGE*/", og_img);
return Html;
}
</script>
Проблема была с этими частями:
"<script>PAGE_INIT</script>" +
"<script src=\"...properties/scripts.js\"></script>"
Компилятор распознал его как новый скрипт runat.Решение состоит в том, чтобы разделить строку, содержащую теги сценария:
"<script>PAGE_INIT<" + "/script>" +
"<script src=\"...properties/scripts.js\"><" + "/script>"