如何使用属性使用字符串值,从一类到另一个类
我有类:后来如何使用属性使用字符串值,从一类到另一个类
string url = li1.Value;
pro itm = new pro(); // I have create Proprtie so I'm calling that
itm.SetURL(url); // here I'm setting value
然后:
public class pro {
private string url = string.Empty;
public string GetURL() { return url; }
public void SetURL(string value) { url = value; }
}
在这一行我得到价值
pro itm = new pro(); //properties object I have created
string url = itm.GetURL(); // I'm not getting value which I have set in first class.
我也曾经创建的属性;我究竟做错了什么?
告诉我怎么一流的我的字符串值到达第二级使用性能。告诉我,我正在尝试的代码,但无法做到这一点。
如果代码与您描述的一样,那么您必须使用与执行SetURL
相同的itm
。它看起来像你实例化一个新的pro
,该不会是你已经运行在SetURL
同一个,所以这将是空的(也就是这里的默认值)。
然而,你应该只使用.NET属性来代替的GetURL和SetURL。
public class pro
{
public string Url {get;set;}
}
您还可以,然后使用对象初始化(这是只开放给你,如果你使用的是.NET的更新的版本之一,虽然)
pro itm = new pro{Url=li1.Value};
最后,以访问该值:现在
itm.Url;
,你可以使类及其方法静态的,让每一个调用它的对象将看到相同的最后一个值,也。 IF,那是你真正需要的
你的意思设置网址提交到静态的?
public class pro
{
static private string url = string.Empty;
public string GetURL() { return url; }
public void SetURL(string value) { url = value; }
}
不,我只是想从一个类调用一个字符串vriable值到另一个类使用asp.net中的proprties – 2012-03-16 05:38:05
尝试使用会话吗? – Whitesmell 2012-03-16 05:41:20
通过它的外观,你应该传递对象而不是重新创建对象。您正在使用2级不同的对象
说实话,它并不需要是一个类,其所有做的是设置和获取一个字符串属性,你为什么不只是让一个字符串属性的类正在使用它?
像这样:
private string ProUrl {get;set;}
要创建的亲新实例,然后无需设置 pro.url的价值你想获得的价值二审第二次。所以显然需要默认值。
string url = li1.Value;
pro itm = new pro(); // I have created a Proprty so I'm calling that
itm.SetURL(url); // here I'm setting value
print itm.GetURL()
now。应该能够看到设置的值。
或者,如果你的要求是保留变量的单拷贝整个然后用static variables
在C#3。0和更高版本,当属性访问器中不需要额外的逻辑时,自动实现的属性使得属性声明更加简洁。它们还使客户端代码能够创建对象。当您按照以下示例所示声明属性时,编译器会创建一个专用匿名支持字段,该字段只能通过属性的get和set访问器访问。
你只需要这个来获得上述功能:
public class Pro
{
// Auto-Impl Properties for trivial get and set
public String Url { get; set; }
}
//Here accessing the property of Url
Pro proUrl = new Pro();// // Intialize a new object.
proUrl.Url = "www.google.com";//Setting the value
Console.WriteLine("The url is {0}",proUrl.Url);
“我究竟做错了” - 命名类“亲”和变量“ITM”为你希望其他人阅读代码是definitly之一这些事。 – 2012-03-16 05:28:30
当你说“then later”时,你的意思是代码是以不同的方法运行还是运行在不同的页面上? – patmortech 2012-03-16 05:40:36
你已经在这里问完全相同的问题,并没有接受答案http://*.com/questions/9715520/why-are-my-values-not-being-kept-between-instances-of-a -type – Divi 2012-03-16 06:23:36