I have a normal web form with code behind, in this code behind I can instantiate a couple of classes I have in the root folder, such as:
public partial class _De
public string id { get; set; }
is an automatic property and these were added in C# v3.0 / .Net v3.5, so ensure you are targetting this version or higher in your project settings. If you wish to target an earlier version you'll need to use properties with a backing field.
do you have TargetFramework = "3.5" for the project ? Check out this post.
public string id { get; set;}
This line is the issue, and the question has been answered above, but I am adding an aswer with code to illustrate how to put in backing fields for those who are new to C#.
This an example of what the backing fields would look like, for public string id { get; set; }
:
private string p_id="";
public string id {
get {
return p_id;
}
set {
p_id = value;
}
}
Note the initialized private string p_id
that holds the actual value for the public string id
. Also note that value
is defined by the compiler, and is cast as a string in this instance. If the property id
was an int
instead, value would be cast as an int (integer) instead of a string.