Я пишу программу на C #, которая проверит, чтобы все соединения, которые у нее должны быть активными, основанные на его файле веб-конфигурации, были активными, а если нет, то попытались бы перезапустить соединение и сообщить хосту, если оно выходит из строя или проходит на делать это.
Я очень плохо понимаю файл web.config, я знаю, что это XML, и я думаю, что точки, которые я хочу видеть, являются активными, являются конечными точками.
В настоящее время я могу прочитать файл, но не могу просто пройти тест после "endpoint ="
Идея / цель программы состоит в том, чтобы я мог перезапустить соединение из моего веб-приложения с моей базой данных, если по какой-то причине оно прекратилось, и дать мне знать, что во время работы этой программы, что соединение было разорвано .
Program.cs
using System;
using System.IO;
using System.Linq;
using System.Collections.Generic;
using System.Windows;
using System.Windows.Forms;
namespace webconfig
{
static class Program
{
/// <summary>
/// The main entry point for the application.
/// </summary>
[STAThread]
static void Main()
{
Application.EnableVisualStyles();
Application.SetCompatibleTextRenderingDefault(false);
Application.Run(new Form1());
}
}
}
Форма 1
using System;
using System.Collections.Generic;
using System.ComponentModel;
using System.Data;
using System.Drawing;
using System.Linq;
using System.Text;
using System.Windows.Forms;
using System.IO;
namespace webconfig
{
public partial class Form1 : Form
{
public Form1()
{
InitializeComponent();
}
public void richTextBox1_TextChanged(object sender, EventArgs e)
{
RTBconsole.Text = "" + DateTime.Now.Month + "/" + DateTime.Now.Day + "/" + DateTime.Now.Year + "\r\n\r\n";
// create reader & open file
string strFilename = "C:\\Sites\\EasyeServeIDSrv\\Web.config";
FileStream fsVideos = new FileStream(strFilename,FileMode.Open,FileAccess.Read);
System.Xml.XmlTextReader rdrXml = new System.Xml.XmlTextReader(fsVideos);
StreamReader tr = new StreamReader("C:\\Sites\\EasyeServeIDSrv\\Web.config");
do
{
String current = tr.ReadLine();
// read a line of text
if (current.Contains("endpoint") == false || current.Contains("</endpoint>") == false)
{
RTBconsole.AppendText(" "+ current.ToString());
}else{
}
}while(!tr.EndOfStream);
do
{
// Read an item and return true
// Continue reading as long as ...
} while (rdrXml.Read() == true); // ... as long as Read() returns true
// Once Read() returns false, STOP!!!
fsVideos.Close();
Console.WriteLine();
// close the stream
tr.Close();
}
}
}