我有一种如下方法,该方法获取数据并将其存储到特定的变量中。我还具有两个静态变量,如果满足条件,它们将保留其值。我的问题是如何将这些数据存储在特定类的属性中?例如,我有一个名为UserDetails属性的类: UserDetails类public class UserDetails { public static string RateCountry { get; set; } public static string RateWeek { get; set; } public int Start { get; set; } public int Length { get; set; } public string Name { get; set; } public string Address { get; set; }}二等就目前而言,它的工作方式是这样的。但是我想通过使用对象来增强它。public static string RateCountry { get; private set; }public static string RateWeek { get; private set; }public ActionResult ShowList(){ int start = Convert.ToInt32(Request["start"]); int length = Convert.ToInt32(Request["length"]); string name = Request["search[value]"]; string address = Request[("columns[3][search][value]")]; string rateType = Request[("columns[7][search][value]")];if (string.IsNullOrEmpty(rateType)) // if null, reset the static variables to null{ RateCountry = ""; RateWeek = "";}else{ if (CheckDate(rateType)) // if contains date, assign to RateWeek { RateWeek = rateType; } else { RateCountry = rateType; // else if contains a string word, assing to ratecountry }}var items = AssignDetails(start, length, name, address, RateWeek, RateCountry);return items;}然后,我可以在考虑静态变量的情况下直接传递类的对象,而不是start, length, name在方法中传递诸如此类的几个参数。AssignDetailsUserDetails有人可以帮忙吗?
2 回答

慕哥6287543
TA贡献1831条经验 获得超10个赞
注意:在C#中,它们称为属性,而不是属性。属性是完全不同的东西。
您想做的很简单:
首先,您需要更改您的方法,使其接受您的类UserDetails作为参数:
public void AssignDetails(UserDetails userDetails)
{
// Use userDetails here to do whatever you want
}
其次,调用上述方法时,需要将参数传递给它。您可以创建的实例UserDetails并将其传递给AssignDetails方法:
var userDetails = new UserDetails
{
Start = start,
Length = length,
Name = name
Address = address
}
我不确定为什么RateWeek和 RateCountry属性static在您的类中,但是要设置它们,您可以按以下方式进行操作(请注意,它使用的是类而不是类的实例):
UserDetails.RateWeek = RateWeek;
- 2 回答
- 0 关注
- 186 浏览
添加回答
举报
0/150
提交
取消