Hidistro.SqlDal/Commodities/SkuDao.cs

(开头部分) 6KB

这里只显示每个文件的开头 60 行。登录后可以解锁完整代码。

namespace Hidistro.SqlDal.Commodities
{
    using Hidistro.Core;
    using Hidistro.Entities;
    using Hidistro.Entities.Commodities;
    using Hidistro.Entities.Members;
    using Hidistro.SqlDal.Members;
    using Microsoft.Practices.EnterpriseLibrary.Data;
    using System;
    using System.Data;
    using System.Data.Common;
    using System.Text;

    public class SkuDao
    {
        private Database database = DatabaseFactory.CreateDatabase();

        public DataTable GetExpandAttributes(int productId)
        {
            DataTable table;
            StringBuilder builder = new StringBuilder();
            builder.Append(" SELECT a.AttributeId, AttributeName, ValueStr FROM Hishop_ProductAttributes pa JOIN Hishop_Attributes a ON pa.AttributeId = a.AttributeId");
            builder.Append(" JOIN Hishop_AttributeValues v ON a.AttributeId = v.AttributeId AND pa.ValueId = v.ValueId  WHERE ProductId = @ProductId ORDER BY a.DisplaySequence DESC, v.DisplaySequence DESC");
            DbCommand sqlStringCommand = this.database.GetSqlStringCommand(builder.ToString());
            this.database.AddInParameter(sqlStringCommand, "ProductId", DbType.Int32, productId);
            using (IDataReader reader = this.database.ExecuteReader(sqlStringCommand))
            {
                table = DataHelper.ConverDataReaderToDataTable(reader);
            }
            DataTable table2 = new DataTable();
            if ((table != null) && (table.Rows.Count > 0))
            {
                table2 = table.Clone();
                foreach (DataRow row in table.Rows)
                {
                    bool flag = false;
                    if (table2.Rows.Count > 0)
                    {
                        foreach (DataRow row2 in table2.Rows)
                        {
                            if (((int) row2["AttributeId"]) == ((int) row["AttributeId"]))
                            {
                                DataRow row4;
                                flag = true;
                                (row4 = row2)["ValueStr"] = row4["ValueStr"] + ", " + row["ValueStr"];
                            }
                        }
                    }
                    if (!flag)
                    {
                        DataRow row3 = table2.NewRow();
                        row3["AttributeId"] = row["AttributeId"];
                        row3["AttributeName"] = row["AttributeName"];
                        row3["ValueStr"] = row["ValueStr"];
                        table2.Rows.Add(row3);
                    }
                }
            }
            return table2;
        }
后面还有 70 行代码,购买后查看完整代码

24 小时内免费解锁 3 个项目,之后 1 算力/个。 规则说明

AI 解读 AI

登录后可用,每次 10 算力,解读结果公开显示在下面。

还没有人解读过这个文件。