我正在考虑为工作实践和我的一个小项目编写一个电子商务平台。我正处于我想要开始编写URL和SEO frnly URL的阶段。
我的问题是我写的系统有无限的类别/子类别,导致我的导航问题。
我理想的网址是:
http://mydomain.com/products/first-category/second-category/productname.aspx
并且为了实现这一点,我正在考虑循环回到parentid =的数据库。但我觉得这不是最佳做法,每个类别和子类别和每个页面的产品都做错了。
任何人都可以帮助如何实现这一目标吗?
我知道如何使用www.urlrewriting.net并在asp.net 3.5中编写网站,但它的技术答案是循环获取名称等我需要帮助。
如果您需要更多信息,我很乐意回答任何问题,希望有人能帮助我实现这一目标。
由于
答案 0 :(得分:0)
如果您担心返回数据库,只需将整个类别表缓存到内存中。
struct Category
{
UInt32 CategoryId {get;set;}
UInt32 ParentId {get;set;}
string Name {get; set;}
string Url {get; set;}
}
SELECT CategoryId, ParentId, Name, Url FROM Categories Order By CategoryId;
MyCategories = new Dictionary<UInt32, Category>();
while (rdr.Read)
{
MyCategories.Add((UInt32)rdr["category_id"], new Category(........));
}
现在获取完整路径只是在内存中循环
string path = "";
currentCategory = MyCategories[category_id];
while (currentCategory != nil)
{
// StringBuilder here
path += "/" + currentCategory.Name;
currentCategory = MyCategories[Category.ParentId];
}