Я новичок в использовании методов DevExpress для создания панели инструментов для веб-приложения на asp.net. Я не получаю достаточно хороший пример в методе DashboardLoading от DevExpress о том, как получить данные непосредственно с MS SQL Server. У кого-нибудь есть успешный пример и для этого есть пример кода? Похоже, что они используют XML, txt или другие типы файлов, чтобы получить данные для размещения в Dashboard. Я не хочу этого. Один из них упомянул использовать Stream, но для создания фильтра в базе данных требовалось создать не тот файл, который я ищу. Вот пример из DevExpress, который был для xml, http://www.devexpress.com/Support/Center/Example/Details/E4761.
Вот мой пример,
public partial class Viewer : System.Web.UI.Page
{
protected void Page_Load(object sender, EventArgs e)
{
string uid = AD.GetUserID() + "_p";
Tin.ActiveDirectory.ADSearch ad = new Tin.ActiveDirectory.ADSearch("tdcc");
if (ad.Check_If_Member_Of_AD_Functional_Group(uid, "NEACntrlRmAdm-G") | ad.Check_If_Member_Of_AD_Functional_Group(uid, "NEAWinAdm-G"))
{
//authorized
}
else
{
//Response.Redirect("Denied.asp")
}
ASPxDashboardViewer1.DashboardId = "MirrorDashboard";
}
protected void ASPxDashboardViewer1_DashboardLoading(object sender,
DevExpress.DashboardWeb.DashboardLoadingEventArgs e)
{
//check the identifier of the required dashboard
if(e.DashboardId == "MirrorDashboard")
{
//To get data from SQL Serve to load the Dashboard
}
}
protected void ASPxDashboardViewer1_ConfigureDataConnection(object sender, DevExpress.DashboardWeb.ConfigureDataConnectionWebEventArgs e)
{
//System.Data.SqlClient.SqlConnection sqlConn = new System.Data.SqlClient.SqlConnection(ConfigurationManager.ConnectionStrings["GM"].ConnectionString);
var parameters = e.ConnectionParameters as MsSqlConnectionParameters;
if (parameters != null)
{
parameters.AuthorizationType = MsSqlAuthorizationType.SqlServer;
parameters.DatabaseName = "GM";
parameters.ServerName = "*****";
parameters.UserName="****";
parameters.Password="****";
}
}
}
Вам нужно понять, как работает Dashboard. Ознакомьтесь с их документацией здесь. Сначала вам нужно создать панель управления и подключить ее к вашему SQL Server, а затем скопировать XML файл в свое веб-приложение.
Вот пример кода:
try
{
if (e.DashboardId == "ASPxDashboardViewer1")
{
string definitionPath = "";
string dashboardDefinition;
switch (option)
{
case "A": definitionPath = Server.MapPath("~/A.xml"); break;
case "B": definitionPath = Server.MapPath("~/B.xml"); break;
}
dashboardDefinition = File.ReadAllText(definitionPath);
e.DashboardXml = dashboardDefinition;
}
}
catch (Exception ex)
{
if (IsCallback)
{
DevExpress.Web.ASPxCallback.RedirectOnCallback("Signout.aspx");
}
else
{
Response.Redirect("Signout.aspx");
}
}