public ActionResult DetailView(string aIdx, int saIdx = 0)
        {
            SubArticleVO subVO = new SubArticleVO(saIdx, aIdx);
            ViewBag.aIdx = aIdx;
            ViewBag.articleItem = ArticleDAO.getArticleItem(aIdx);
            ArrayList subArticleList = SubArticleDAO.getSubArticleList(aIdx, 'N');
            ViewBag.subArticleList = subArticleList;
            //항목을 검색하여 들어갔을 때에는 saIdx가 없어서, 항목의 첫번째 값을 표시하게 해줌.
            if (saIdx == 0)
            {
                if (subArticleList.Count > 0)
                {
                    subVO.saIdx = ((SubArticleVO)subArticleList[0]).saIdx;
                }
            }
            //파일 첨부가 있으면 리스트 출력
            SubArticleVO detailItem = SubArticleDAO.getSubArticleItem(subVO.saIdx, 'N');
            ViewBag.detailItem = detailItem;

            // AIDX, SAIDX
            ViewBag.aIdx = subVO.aIdx;
            ViewBag.saIdx = subVO.saIdx;

            ViewBag.fileList = FileDAO.getSubArticleFiles(subVO.saIdx);
            return View();
        }
 public static SubArticleVO getSubArticleItem(int saIdx, char deleted)
 {
     using (SqlConnection conn = DBConn.getConn())
     {
         conn.Open();
         SubArticleVO subArticleItem = null;
         using (SqlCommand cmd = new SqlCommand())
         {
             cmd.Connection = conn;
             cmd.CommandType = System.Data.CommandType.StoredProcedure;
             cmd.CommandText = "P_SubArticleItem_SELECT";
             cmd.Parameters.Add("@saIdx", System.Data.SqlDbType.Int);
             cmd.Parameters.Add("@deleted", System.Data.SqlDbType.Char, 1);
             cmd.Parameters["@saIdx"].Value = saIdx;
             cmd.Parameters["@deleted"].Value = deleted;
             using (SqlDataReader reader = cmd.ExecuteReader())
             {
                 while (reader.Read())
                 {
                     subArticleItem = new SubArticleVO
                     {
                         saIdx = Convert.ToInt32(reader["saIdx"]),
                         aIdx = reader["aIdx"].ToString(),
                         Title = reader["Title"].ToString(),
                         Contents = reader["Contents"].ToString(),
                         Indate = Convert.ToDateTime(reader["Indate"]),
                         Deleted = Convert.ToChar(reader["Deleted"]),
                         Writer = reader["Writer"].ToString()
                     };
                 }
             }
         }
         return subArticleItem;
     }
 }
        public ActionResult WriteSubArticleContents(string aIdx, String writeType, int saIdx = 0)
        {
            SubArticleVO subVO = new SubArticleVO(saIdx, aIdx);
            if ("add".Equals(writeType))
            {
                subVO.aIdx = null;
                subVO.saIdx = 0;
            }
            //왼쪽의 리스트를 위한 데이터
            ArrayList subArticleList = SubArticleDAO.getSubArticleList(subVO.aIdx, 'N');
            ViewBag.subArticleList = subArticleList;

            SubArticleVO detailItem = SubArticleDAO.getSubArticleItem(subVO.saIdx, 'N');
            ViewBag.detailItem = detailItem;
            if (detailItem != null)
            {
                ViewBag.fileList = FileDAO.getSubArticleFiles(subVO.saIdx);
            }

            ViewBag.writeType = writeType;
            ViewBag.aIdx = aIdx;
            ViewBag.saIdx = saIdx;

            return View();
        }
 public static ArrayList getSubArticleList(string aIdx, char deleted)
 {
     using (SqlConnection conn = DBConn.getConn())
     {
         conn.Open();
         ArrayList subArticleList = new ArrayList();
         using (SqlCommand cmd = new SqlCommand())
         {
             cmd.Connection = conn;
             cmd.CommandType = System.Data.CommandType.StoredProcedure;
             cmd.CommandText = "P_SubArticleList_SELECT";
             cmd.Parameters.Add("@aIdx", System.Data.SqlDbType.NVarChar, 30);
             cmd.Parameters.Add("@deleted", System.Data.SqlDbType.Char, 1);
             cmd.Parameters["@aIdx"].Value = aIdx;
             cmd.Parameters["@deleted"].Value = deleted;
             using (SqlDataReader reader = cmd.ExecuteReader())
             {
                 while (reader.Read())
                 {
                     SubArticleVO subArticle = new SubArticleVO
                     {
                         saIdx = Convert.ToInt32(reader["saIdx"]),
                         aIdx = reader["aIdx"].ToString(),
                         Title = reader["Title"].ToString(),
                         Contents = reader["Contents"].ToString(),
                         Indate = Convert.ToDateTime(reader["Indate"]),
                         Deleted = Convert.ToChar(reader["Deleted"]),
                         Writer = reader["Writer"].ToString()
                     };
                     subArticleList.Add(subArticle);
                 }
             }
         }
         return subArticleList;
     }
 }