|
I'm trying to use Linq in VS2005 on .NET 3.0, but I think I'm missing references. Could someone please tell me which assemblies to reference ?
Johan Lombaard
Only two things are infinite, the universe and human stupidity, and I'm not sure about the former - Albert Einstein
|
|
|
|
|
I think you need Visual Studio 2008 for that. And LINQ is part of .NET 3.5
|
|
|
|
|
You can use (bits?) of LINQ in VS2005 with the March CTP I think, not as capable as VS2008 (haven't tried) but I think because the "add-on" for VS2005 does not update the framework (as far as I know) you don't get all the benefits of LINQ such as the var keyword, etc. I might be mistaken since I haven't played with it much.
|
|
|
|
|
Yeah, if it isn't working for you now, wait until release unless you are really dedicated I think only a handful of ISVs are fully supporting LINQ right now.
|
|
|
|
|
It's odd I was really tempted by LINQ to begin with for one particular project I was working on but because it wasn't release (well perhaps for MS it was) quality I couldn't justify it. I thought to myself I should really learn it, thought the same about WPF but since I haven't had a decent project to get started with either I've become quite interested in ASP.NET as it's something I haven't done alot of that type of programming since I come mainly from an embedded background.
Perhaps once Orcas is released I shall have a proper play.
|
|
|
|
|
I've been following it because it would be a really useful addition to our Diamond Binding product. I'm not really into managing long beta periods
|
|
|
|
|
i have 3 different applications
i want a single setup project for all the three applications
three applications are different
1)windows application
2)web application
3)web application
|
|
|
|
|
Hi, all
I have a question about using DataGridView.
Could you write me a code sample how to get and set SelectedItem in Combobox column in DataGridView
Here is the code i use to create a new row
DataGridViewCell dgvc = datagrid.Columns[0].CellTemplate;
datagrid.Rows[index].Cells[0].Value = dgvc;
in CellTemplate two items
Fast
Slow
and it's not clear for me how to set 'Slow' item programmatically
i've tried
((ComboBox)(datagrid.Rows[index].Cells[0].Value)).SelectedIndex = 1;
((ComboBox)(dgvr.Cells[0].Value)).SelectedIndex = 1;
((DataGridViewComboBoxCell)(datagrid.Rows[index].Cells[2].Value)).SelectedIndex = 1;
but it throws exceptions
What should i do?
|
|
|
|
|
hi
i can upload my xml into database easily
but i am getting a problem when the xml tag is a keyword(like desc,double)
saying syntax error in insert into command....
in general insert if keyword canbe changed like [keyword]
but i am not coming accross insert statement when i am using da.update(table)
please help me
|
|
|
|
|
plz give some code and show us how ur inserting the data
Rocky
You can't climb up a ladder with your hands in your pockets.
Follow this rule
Arrive. RAISE HELL. Leave.
|
|
|
|
|
have an xml
i am able to change into data table
and insert into database also...
StringReader xmlsr3 = new StringReader(region);
dset3.ReadXml(xmlsr3, XmlReadMode.IgnoreSchema);
OleDbDataAdapter da3 = new OleDbDataAdapter("select * from drregion", m_Conn);
OleDbCommandBuilder cb3 = new OleDbCommandBuilder(da3);
da3.Update(dtab3); dtab3 = dset3.Tables[0];
like this it gets updated
now the problem is when xml string has a keywords (of databases)
while updating into database that is in the last statement
there is an error saying insert into syntax error
i need to change the
ex: keyfield-desc
to [desc] (i could nt do it in xml ) there was another error if i do that
how can i do this
or is there any other way....
|
|
|
|
|
OK so your problem is that you need to enclose the keywords of databases with [] brackets right!
I'm giving you an idea, go ahead and try it out
store all the available keywords in an string array.
then parse the xml you need to insert comparing them with the contents of the array. if you get a match you shuld enclose the matched word with []
when youre done with that, just do whatever you wanna do OK
as far as my understanding is concerned its really a string manipulation problem.
Rocky
You can't climb up a ladder with your hands in your pockets.
|
|
|
|
|
when i do that
what is happening is
StringReader xmlsr3 = new StringReader(region);
dset3.ReadXml(xmlsr3, XmlReadMode.InferSchema);
an exception rises saying its a "[" cannot be used here
|
|
|
|
|
hmm well in taht case i think we do have a little situation here. calling an XML experienced customer here!!
Rocky
You can't climb up a ladder with your hands in your pockets.
|
|
|
|
|
|
hi,
i'm new to xml serialization. I was wondering how to serialize and deserialize a few('more than 1')arraylists. Another thing is that one of the arraylist consist of a list graphicspaths. I manage to accomplish this same task using binary serialization. However, now i want to learn on how to do this using xml serialization. Can anybody help? I can't seem to find much information about it.
Thanks in advance.
|
|
|
|
|
Do you want to serialize array of arraylists? As far as I remember xml serialization doesn't support serializing graohicspaths (But I'm not sure) If arraylist doesn't contain some complex type that can't be serialized by xml serialization then you can serialize it very easily. Here are some links to get you started:
xml serialization[^]
Serialize Arrays and ArrayLists to XML[^]
|
|
|
|
|
Actually i have a few arraylist which each contains different types or classes. Last time u use binary serialization, i can serialize each or the arraylist separately. e.g:
<br />
<br />
formatter.Serialize(myStream, arr1)<br />
formatter.Serialize(myStream, arr2)<br />
formatter.Serialize(myStream, arr3)<br />
<br />
<br />
<br />
<br />
arr1 = (ArrayList) formatter.Deserialize(myStream);<br />
arr2 = (ArrayList) formatter.Deserialize(myStream);<br />
arr3 = (ArrayList) formatter.Deserialize(myStream);<br />
<br />
<br />
However, does this concept applies with xml serialization?
Also, by looking at the examples given, it seems that for each arraylist i need to create a class each? If it is so, which class should is labelled as "XmlRoot"? if not mistaken, in an XML file there should have only one root. however, from my perspective, all of the arraylist should be xmlelements. Am i right?
Thanks in advance.
|
|
|
|
|
Hi Cyn8
I said how you can serialize graphicPaths (if you had problem with it just tell me) before and about the arraylists you can just create a new Class that contains those data (is much better) like collection or just simply put your arrayLists niside another one and serialize that (I think I said these before too)
but if you mean SOAP serializtion which give you the xml file just simply use SOAPFormatter Class instead of BinaryFormatter class and you don't need to change your code but as I know Xmls from SOAP are not such a readable ones So if you need to Save your data which be easily readable you can use xml.serializations which Giorgi Dalakishvili sent you some cool links about that or just create your custom data saver with xml classes if your datas are not such complex
and at last for using SOAPFormatter you must add it as reference
best regards
-- modified at 10:07 Friday 17th August, 2007
|
|
|
|
|
hi there,
With your help last time, i've manage to use binary serialization to serialize and deserialize the arraylists
However, now i have abit problem with xml.serializations. Looking at the examples given, it seems that for each arraylist i need to create a class each? If it is so, which class should is labelled as "XmlRoot"? in an XML file there should have only one root and can have many elements right? Sorry if i still don't quite understand.
Besides, i try to modify the codes by replacing all the functions that uses binary formatter to xml serializer, which does not works as shown below.
XmlSerializer s = new XmlSerializer( typeof(ArrayList) );<br />
private ArrayList alDrawingObjects = new ArrayList();<br />
public ArrayList CoordList=new ArrayList (); <br />
public ArrayList ShapeTypeList=new ArrayList (); <br />
public ArrayList ColorList=new ArrayList ();<br />
public ArrayList PolyCoord = new ArrayList();<br />
public ArrayList SizeList = new ArrayList();
Serializing:
Stream myStream ;<br />
myStream = File.OpenWrite(filename);<br />
ArrayList arr = new ArrayList();<br />
if (myStream != null)<br />
{<br />
<br />
TextWriter w = new StreamWriter( filename );<br />
s.Serialize( w, ShapeTypeList );<br />
s.Serialize( w, ColorList );<br />
s.Serialize( w, CoordList);<br />
s.Serialize( w, SizeList );<br />
<br />
for(int i=0;i<PathList.Count;i++)<br />
{<br />
GraphicsPathData gpd = new GraphicsPathData((GraphicsPath)PathList[i]);<br />
Stream gpdStream = GraphicsPathData.Serialize(gpd);<br />
arr.Add(gpdStream);<br />
<br />
}<br />
s.Serialize( w, arr);<br />
<br />
w.Close();
Deserializing:
ArrayList newList;<br />
TextReader r = new StreamReader(filename);<br />
ShapeTypeList = (ArrayList) s.Deserialize(myStream);<br />
ColorList = (ArrayList) s.Deserialize(myStream);<br />
CoordList = (ArrayList)s.Deserialize(myStream);<br />
SizeList = (ArrayList) s.Deserialize(myStream);<br />
arr=(ArrayList) s.Deserialize(myStream);<br />
for(int i=0;i<arr.Count;i++)<br />
{<br />
Stream newStream = new MemoryStream(((MemoryStream)arr[i]).ToArray());<br />
GraphicsPath gpDeserialized = GraphicsPathData.GetGraphicsPath(newStream); <br />
PathList.Add(gpDeserialized); <br />
}<br />
myStream.Close(); <br />
r.Close();
Please help to explain on which part i should change?
Thanks again.
-- modified at 2:42 Monday 20th August, 2007
|
|
|
|
|
if i put the all arraylists into another arraylist, when i deserialize them, how do i deserialize them into the original arraylist?
Thanks for any reply
|
|
|
|
|
I think the best way to do this is to create a new class for holding whole of your data. about the GPD you used in the code ,as a tip holding serialized streams is not a good choice ,I think you can serialize whole of your GPDs together (because they are marked as serializable)
and in the code you put all your data in one stream ,retrieving from it is not impossible but is far more harder than use a new class to hold all of your data
here is the scheme of such a class (it has some works to be a complete one)
<code>
[XmlRoot("MyData")]
[Serializable]
class MyData
{
ArrayList shapeTypeList;
ArrayList colorList;
ArrayList coordList;
ArrayList sizeList;
ArrayList graphicsPathDataList;
[XmlArray("ShapeData")]
[XmlArrayItem("Shape",typeof())]
public ArrayList ShapeTypeList
{
get { return this.shapeTypeList; }
}
[XmlArray("ColorData")]
[XmlArrayItem("Color",typeof())]
public ArrayList ColorList
{
get { return this.colorList; }
}
[XmlArray("CoorinationData")]
[XmlArrayItem("Coordination",typeof())]
public ArrayList CoordList
{
get { return this.coordList; }
}
[XmlArray("SizeData")]
[XmlArrayItem("Size",typeof())]
public ArrayList SizeList
{
get { return this.sizeList; }
}
[XmlArray("GPDData")]
[XmlArrayItem("GPD",typeof())]
public ArrayList GraphicsPathDataList
{
get { return this.graphicsPathDataList; }
}
public MyData(ArrayList shape, ArrayList color, ArrayList coord, ArrayList size, ArrayList gpd)
{
this.shapeTypeList = shape;
this.colorList = color;
this.coordList = coord;
this.sizeList = size;
this.graphicsPathDataList = gpd;
}
static MyData BinLoad(string path)
{
BinaryFormatter binSer=new BinaryFormatter();
FileStream fo=new FileStream(path,FileMode.Open);
object data=binSer.Deserialize(fo);
fo.Close();
return data as MyData;
}
void BinSerialize(string path)
{
BinaryFormatter binSer=new BinaryFormatter();
FileStream fo=new FileStream(path,FileMode.OpenOrCreate);
binSer.Serialize(fo,this);
fo.Close();
}
static MyData XmlLoad(string path)
{
XmlSerializer xmlSer=new XmlSerializer(typeof(MyData));
FileStream fo=new FileStream(path,FileMode.Open);
object data=xmlSer.Deserialize(fo);
fo.Close();
return data as MyData;
}
void XmlSerialize(string path)
{
XmlSerializer xmlSer=new XmlSerializer(this.GetType());
FileStream fo=new FileStream(path,FileMode.OpenOrCreate);
xmlSer.Serialize(fo,this);
fo.Close();
}
public enum SerializeTo{XML,Binary};
public void Serialize(string path,SerializeTo to)
{
if(to==SerializeTo.Binary)
this.BinSerialize(path);
else
this.XmlSerialize(path);
}
public static MyData Load(string path,SerializeTo to)
{
if(to==SerializeTo.Binary)
return BinLoad(path);
else
return XmlLoad(path);
}
}
</code>
I'm not sure it works just after putting the types because I couldn't test that, but i'm sure it will give you the clue
another thing MyData Class can be serialize in both Xml and Binary
hope the post would be useful
good luck my friend
|
|
|
|
|
hi,
After i serialize a few arraylist, my xml file seem to look like below:
<code>
<?xml version="1.0" encoding="utf-8"?>
<ArrayOfAnyType xmlns:xsd="http://www.w3.org/2001/XMLSchema" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance">
<anyType xsi:type="xsd:int">1</anyType>
</ArrayOfAnyType><?xml version="1.0" encoding="utf-8"?>
<ArrayOfAnyType xmlns:xsd="http://www.w3.org/2001/XMLSchema" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance">
<anyType xsi:type="Color" />
</ArrayOfAnyType><?xml version="1.0" encoding="utf-8"?>
<ArrayOfAnyType xmlns:xsd="http://www.w3.org/2001/XMLSchema" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance">
<anyType xsi:type="ArrayOfPoint">
<Point>
<X>40</X>
<Y>18</Y>
</Point>
<Point>
<X>110</X>
<Y>18</Y>
</Point>
<Point>
<X>110</X>
<Y>68</Y>
</Point>
<Point>
<X>40</X>
<Y>68</Y>
</Point>
</anyType>
</ArrayOfAnyType><?xml version="1.0" encoding="utf-8"?>
<ArrayOfAnyType xmlns:xsd="http://www.w3.org/2001/XMLSchema" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" /><?xml version="1.0" encoding="utf-8"?>
<ArrayOfAnyType xmlns:xsd="http://www.w3.org/2001/XMLSchema" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance">
<anyType xsi:type="MemoryStream">
<Position>142</Position>
<Capacity>256</Capacity>
</anyType>
</ArrayOfAnyType></code>
is this an error? why does is the elements is named '<ArrayOfAnyType>'
Besides, how do i deserialize arraylist of different types.
first i declareas shown below:(this is declare in Form, i did not use MyData class, instead all arraylist is declared in the form)
<code>XmlSerializer s = new XmlSerializer( typeof(ArrayList),new Type[] {typeof(Coordinate),typeof(ColorL),typeof(SizeL), typeof(ArrSave)} );
</code>
then in Load function:
<code>
filename = openFileDialog.FileName;
Stream myStream = openFileDialog.OpenFile();
ShapeTypeList = (ArrayList) s.Deserialize(myStream);
ColorList = (ArrayList) s.Deserialize(myStream);
CoordList = (ArrayList)s.Deserialize(myStream);
SizeList = (ArrayList) s.Deserialize(myStream);
arr=(ArrayList) s.Deserialize(myStream);
arr=(ArrayList) s.Deserialize(myStream);
for(int i=0;i<arr.Count;i++)
{
Stream newStream = new MemoryStream(((MemoryStream)arr[i]).ToArray());
GraphicsPath gpDeserialized = GraphicsPathData.GetGraphicsPath(newStream);
PathList.Add(gpDeserialized);
}
myStream.Close();
r.Close();
</code>
thanks for any reply. Sorry if if my method is wrong. Just trying a different way.
|
|
|
|
|
While i am executing the following code, i am getting the error 'Input string was not in a correct format'
for(i=0;i<=6;i=i+2)
{
for(j=0;j<=485;j++)
{
ran = (Excel.Range)Worksheet.Cells[j+1, i+1];
s[i,j]= int.Parse((string)ran.Text);
tw.WriteLine("The Value of M["+i+"]["+j+"] is" + s[i,j]);
}
}
i am storing total 400 values from the excel sheet, i am having problem at A287
this is the output file
The Value of M[0][284] is-5
The Value of M[0][285] is-3
The Value of M[0][286] is-4
The Value of M[0][
here i am getting exception
|
|
|
|
|
It means that A287 contains something that isn't string representation of number. Instead of int.Parse use int.TryParse to see if the string can be parsed as number.
|
|
|
|