|
|
Hi Team, i have a master page in my .net application and from master page i call a helper file (.cs)and my requirement is i would like to execute one method(returns a string value) in that helper file, my application connects to master page each time upon loading of different pages i would like to keep the first method call value and persist the value between different page calls
i am unable to user httpcontext.session object as it gives me null values always ,
can some one suggest me the best way to preserve the method call value between round trips.
|
|
|
|
|
|
Hi This is related to C# code only but i have given the information related to session which i tried to get my requirement, it is purely c# related issue.
|
|
|
|
|
You mentioned session variables and httpcontext which is why I asked if it is an ASP.NET application. If it is pure C# then you just save the information in a class variable somewhere, in the same way you would for any variable.
Veni, vidi, abiit domum
|
|
|
|
|
No, while you are using C# as your code, the issue relates to ASP.NET development. This isn't a general purpose C# question, is it? This is asking how to store the value so that different browser page refreshes see the same value.
|
|
|
|
|
Hi i am looking for options in C# code to use a c# method call value between different pages, anyway i have posted my request in asp.net section.
|
|
|
|
|
What Pete has said the issue is an ASP.NET issue rather than a C# issue, even though you are coding using C#
The C# forum covers a multitude of sins that are not related to ASP.NET in particular.
you will more than likely get an answer quicker using the ASP.NET forum
Every day, thousands of innocent plants are killed by vegetarians.
Help end the violence EAT BACON
|
|
|
|
|
for (int i = 0; i < t.Rows.Count; i++)
{
dataGridView1.Rows[i].Cells["Column1"].Value = t.Rows[0]["Address"].ToString();
}
error occur :
index was out of range,must be non-negative and less than the
size of the collection. parameter name:index
how i solve this prob,
|
|
|
|
|
Kawshik_itbd wrote: for (int i = 0; i < t.Rows.Count; i++)
{
dataGridView1.Rows[i].Cells["Column1"].Value = t.Rows[0]["Address"].ToString();
}
Change to
for (int i = 0; i<t.Rows.Count-1;i++)
{
...
}
This should do it..
The signature is in building process.. Please wait...
|
|
|
|
|
if i do
for (int i = 0; i <= <pre lang="xml">t.Rows.Count-1; i++)
{
dataGridView1.Rows.Add();
dataGridView1.Rows[i].Cells["Column1"].Value ="roy";
}</pre>
my prob is solve but i don;t add dataGridView1.Rows.Add() prog can not be execute through a exception like Index was out of range. Must be non-negative and less than the size of the collection.
Parameter name: index whatever i do either t.Rows.Count-1 or t.Rows.Count
plz help what can i do
|
|
|
|
|
Change
...
dataGridView1.Rows[i].Cells[...
...
to
...
dataGridView1.Rows[dataGridView1.Rows.Count-1].Cells[...
...
Your counter is based on t, which is not equal to the dataGridView.
The signature is in building process.. Please wait...
|
|
|
|
|
two row in my data table it shows only last row
String sql = "select Name,Gender,Course1,Course2 from Info ";
DataTable t = DataAccess.GetDataTable(sql);
for (int i = 0; i <t.Rows.Count; i++)
{
dataGridView1.Rows[dataGridView1.Rows.Count - 1].Cells["Column1"].Value =t.Rows[i]["Name"] ;
dataGridView1.Rows[dataGridView1.Rows.Count - 1].Cells["Column2"].Value =t.Rows[i]["Gender"] ;
dataGridView1.Rows[dataGridView1.Rows.Count - 1].Cells["Column3"].Value =t.Rows[i]["Course1"] ;
dataGridView1.Rows[dataGridView1.Rows.Count - 1].Cells["Column4"].Value = t.Rows[i]["Course2"];
}
how i show all the row in gridview plz solve this prob
|
|
|
|
|
This way you end up just filling the same row over and over, also it fails if there is no row in the DataGridView.
I would do it that way instead:
if (dataGridView1.Rows.Count <= i)
dataGridView1.Rows.Add();
dataGridView1.Rows[i].Cells[...
The good thing about pessimism is, that you are always either right or pleasently surprised.
|
|
|
|
|
thank you Freak30 that means always add dataGridView1.Rows.Add()
|
|
|
|
|
you can also write like this..
//this line write before for loop
//with this line grid(dataGridView1) create line as per dataTable(t)
dataGridView1.RowCount=t.Rows.Count
for (int i = 0; i < t.Rows.Count; i++)
{
dataGridView1.Rows[i].Cells["Column1"].Value = t.Rows[0]["Address"].ToString();
}
|
|
|
|
|
it does not show the multiple it shows only first row ,if i did like
for (int i = 0; i <t.Rows.Count; i++)
{
dataGridView1.Rows.Add();
dataGridView1.Rows[i].Cells["Column1"].Value = t.Rows[i]["Name"];
dataGridView1.Rows[i].Cells["Column2"].Value = t.Rows[i]["Gender"];
dataGridView1.Rows[i].Cells["Column3"].Value = t.Rows[i]["Course1"];
dataGridView1.Rows[i].Cells["Column4"].Value = t.Rows[i]["Course2"];
}
no prob occur.
|
|
|
|
|
You are using the list t as the source of your index count, rather than dataGridView1 , it should be:
for (int i = 0; i < dataGridView1.Rows.Count; i++)
{
dataGridView1.Rows[i].Cells["Column1"].Value = t.Rows[0]["Address"].ToString();
}
(or similar).
Veni, vidi, abiit domum
|
|
|
|
|
is this right ?
String sql = "select Name,Gender,Course1,Course2 from Info ";
DataTable t = DataAccess.GetDataTable(sql);
MessageBox.Show(Convert.ToString(dataGridView1.Rows.Count));
for (int i = 0; i <t.Rows.Count; i++)
{
dataGridView1.Rows.Add();
dataGridView1.Rows[i].Cells["Column1"].Value = t.Rows[i]["Name"];
dataGridView1.Rows[i].Cells["Column2"].Value = t.Rows[i]["Gender"];
dataGridView1.Rows[i].Cells["Column3"].Value = t.Rows[i]["Course1"];
dataGridView1.Rows[i].Cells["Column4"].Value = t.Rows[i]["Course2"];
}
|
|
|
|
|
Kawshik_itbd wrote: is this right ? It looks like it probably is; what happens when you try it? I would also ask why you are not using databinding to build your view automatically.
Veni, vidi, abiit domum
|
|
|
|
|
it works .how i use databinding? can you gives some example of code ??
|
|
|
|
|
There are lots of samples and articles around that explain databinding and how it can speed up your applications.
Veni, vidi, abiit domum
|
|
|
|
|
the way that i follow is n;t correct or not ??
|
|
|
|
|
Yes, it's correct, in the sense that it does what you need, but databinding is much more powerful and you can do it with a single line of code.
Veni, vidi, abiit domum
|
|
|
|
|
thnaks for advice
|
|
|
|