gpt4 book ai didi

c# - 评估我的代码设计 - 简单片段

转载 作者:太空宇宙 更新时间:2023-11-03 18:17:03 24 4
gpt4 key购买 nike

protected void Page_Load(object sender, EventArgs e)
{
if (!Page.IsPostBack)
{
loadCountries();
loadRegions();
loadCities();
}
}

private void loadCountries()
{
Country country = new Country();
ddlCountry.DataSource = country.GetDataTable();
ddlCountry.DataTextField = "countryName";
ddlCountry.DataValueField = "countryID";
ddlCountry.DataBind();
}

private void loadRegions()
{
Region region = new Region();
ddlRegion.DataSource = region.GetRegionID(ddlCountry.SelectedValue);
ddlRegion.DataTextField = "regionName";
ddlRegion.DataValueField = "regionID";
ddlRegion.DataBind();

}

private void loadCities()
{
City city = new City();
ddlCity.DataSource = city.GetCityID(ddlRegion.SelectedValue);
ddlCity.DataTextField = "cityName";
ddlCity.DataValueField = "cityID";
ddlCity.DataBind();
}

protected void ddlCountry_SelectedIndexChanged(object sender, EventArgs e)
{
loadRegions();
if (ddlRegion.SelectedItem.Text == "No Province")
{
ddlRegion.Enabled = false;
loadCities();
}
else
{
ddlRegion.Enabled = true;
loadCities();
}
}

代码为Default.aspx后端(表现层)

任何与 Country 相关的业务逻辑都放在 Country 类中,同样的规则适用于 Region 和 City。

这个片段设计可以吗?也就是说,是否符合表现层标准设计?我如何改进此代码段设计(如果可能)?

我是新手,我试着确保我慢慢地但肯定地接受它。

最佳答案

我认为命名约定需要一些改进。仔细考虑您的类和方法的名称。

例如(类名):

您有一个名为 Country 的类,表明它代表一个国家/地区。但是,我认为不会。看起来它负责创建国家数据表。

另一个例子(方法名):

您有一个名为 Region.GetRegionID() 的方法。看起来(但我不完全确定)好像这是基于 RegionId 获得的区域,所以我更喜欢 GetByRegionId。对类名的同样批评也适用。

关于c# - 评估我的代码设计 - 简单片段,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/4581785/

24 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com