Hello Friends...
I have downloaded silverlight visifire dll to show the interactive graph. for that i had referred following link.
http://www.visifire.com/documentation/Visifire_Documentation/Charts/Common_Tasks/creating_chart_from_sql_data_using_asp.net_and_visifire.htm[
^]
i had done as mentioned in above link. it showed me single line graph, but when i tried it for multiple lines. it again showed single line data only. Following code for multiple lines to display in visifire graph.
DateTime ObjStartTime = DateTime.Now.AddHours(-2);
DateTime ObjEndTime = DateTime.Now;
string starttime = ObjStartTime.Month.ToString() + "/" + ObjStartTime.Day.ToString() + "/" + ObjStartTime.Year.ToString() + " " + ObjStartTime.Hour.ToString() + ":" + ObjStartTime.Minute.ToString() + ":" + ObjStartTime.Second.ToString();
string endtime = ObjEndTime.Month.ToString() + "/" + ObjEndTime.Day.ToString() + "/" + ObjEndTime.Year.ToString() + " " + ObjEndTime.Hour.ToString() + ":" + ObjEndTime.Minute.ToString() + ":" + ObjEndTime.Second.ToString();
OleDbConnection ObjConnection = new OleDbConnection("Provider=IhOLEDB.iHistorian.1;Data Source=TAUSEEF-PC");
string query = "set starttime=\'" + starttime + "\', endtime=\'" + endtime + "\', samplingmode=rawbytime, rowcount=0 \n select timestamp as ts,tagname as tag1,value as tag11value from ihrawdata where tagname=TAUSEEF-PC.Simulation00962";
OleDbDataAdapter ObjDataAdapter = new OleDbDataAdapter(query, ObjConnection);
DataTable ObjTag1 = new System.Data.DataTable();
ObjDataAdapter.Fill(ObjTag1);
query = "set starttime=\'" + starttime + "\', endtime=\'" + endtime + "\', samplingmode=rawbytime, rowcount=0 \n select timestamp as ts,tagname as tag2,value as tag22value from ihrawdata where tagname=TAUSEEF-PC.Simulation00001";
ObjDataAdapter = new OleDbDataAdapter(query, ObjConnection);
DataTable ObjTag2 = new System.Data.DataTable();
ObjDataAdapter.Fill(ObjTag2);
DataSet ObjDataSet = new System.Data.DataSet();
ObjDataSet.Tables.Add(ObjTag1);
ObjDataSet.Tables.Add(ObjTag2);
//ObjTag1.PrimaryKey = new DataColumn[] { ObjTag1.Columns["ts"] };
//ObjDataSet.Relations.Add("Tag12_Primary", ObjTag2.Columns["ts"], ObjTag1.Columns["ts"]);
DataTable ObjMainTable = new System.Data.DataTable();
ObjMainTable.Columns.Add("ts", typeof(DateTime));
ObjMainTable.Columns.Add("tag11value", typeof(double));
ObjMainTable.Columns.Add("tag22value", typeof(double));
for (int i = 0; i < ObjTag1.Rows.Count; i++)
{
//if (ObjTag1.Rows. || ObjTag2.Rows[i]
ObjMainTable.Rows.Add(ObjTag1.Rows[i][0], ObjTag1.Rows[i][2], ObjTag2.Rows[i][2]);
}
// Initialize StringBuilder class
StringBuilder chartXaml = new StringBuilder();
// Append chart XAML data
chartXaml.Append("<vc:Chart xmlns:vc=\"clr-namespace:Visifire.Charts;assembly=SLVisifire.Charts\" Width=\"800\" Height=\"800\" Theme=\"Theme1\" >");
chartXaml.Append("<vc:Chart.AxesY>");
chartXaml.Append("<vc:Axis Prefix=\"$\"></vc:Axis>");
chartXaml.Append("</vc:Chart.AxesY>");
chartXaml.Append("<vc:Chart.Titles>");
chartXaml.Append("<vc:Title Text=\"ASP.NET visifire example By Tauseef Kaldane \" FontSize=\"14\"/>");
chartXaml.Append("</vc:Chart.Titles>");
chartXaml.Append("<vc:Chart.Series>");
chartXaml.Append("<vc:DataSeries RenderAs=\"Line\">");
chartXaml.Append("<vc:DataSeries.DataPoints>");
foreach (DataRow dataRow in ObjMainTable.Rows)
{
chartXaml.Append("<vc:DataPoint AxisXLabel=\"" + dataRow[0].ToString() + "\" YValue=\"" + dataRow[1].ToString() + "\"/>");
chartXaml.Append("<vc:DataPoint AxisXLabel=\"" + dataRow[0].ToString() + "\" YValue=\"" + dataRow[2].ToString() + "\"/>");
}
chartXaml.Append("</vc:DataSeries.DataPoints>");
chartXaml.Append("</vc:DataSeries>");
chartXaml.Append("</vc:Chart.Series>");
chartXaml.Append("</vc:Chart>");
// Write object to an HTTP response stream
Response.Write(chartXaml);
Plz help me