コード例 #1
0
        /// <summary>
        /// 发送数据
        /// </summary>
        /// <param name="data">数据</param>
        /// <param name="sendFormat">数据格式</param>
        public void SendData(string data, SendFormat sendFormat)
        {
            if (!SerialPortObj.IsOpen)
            {
                throw new Exception("端口未打开,请打开相关端口");
            }

            byte[] byteData = null;

            switch (sendFormat)
            {
            case SendFormat.String:
                byteData = SysconvertHelper.StringToBytes(data, false);
                break;

            case SendFormat.Hex:
                if (!data.Valid_IsHex())
                {
                    throw new Exception("数据不是十六进制");
                }
                //将16进制转换为byte[]数组
                byteData = SysconvertHelper.From16ToBtyes(data);
                break;

            default:
                break;
            }

            //发送数据
            SerialPortObj.Write(byteData, 0, byteData.Length);
        }
コード例 #2
0
 /// <summary>
 /// 发送数据(16进制或字符串)
 /// </summary>
 /// <param name="data">要发送的数据</param>
 /// <param name="format">发送的格式</param>
 public void SendData(string data, SendFormat format)
 {
     if (this.serialPort.IsOpen == false)
     {
         throw new Exception("请打开相关串口!");
     }
     else
     {
         byte[] byteData;
         if (format == SendFormat.Hex)//如果是16进制
         {
             if (IsIllegalHex(data))
             {
                 byteData = algorithmHelper.From16ToBytes(data);//将16进制字符串转换成byte[]数组
             }
             else
             {
                 throw new Exception("数据不是16进制格式!");
             }
         }
         else
         {
             byteData = algorithmHelper.StringToBytes(data, false);
         }
         //发送数据 (数据, 从0开始,结束位置)
         this.serialPort.Write(byteData, 0, byteData.Length);
     }
 }
コード例 #3
0
ファイル: HNode.cs プロジェクト: xnumad/Sulakore
 public ValueTask <int> SendAsync(ushort id, params object[] values)
 {
     if (SendFormat == null)
     {
         throw new NullReferenceException($"Cannot send structued data while {nameof(SendFormat)} is null.");
     }
     return(SendAsync(SendFormat.Construct(id, values)));
 }
コード例 #4
0
        private static HandlerResult CreateResult(WebSocket socket, SendFormat message)
        {
            var list = new List <WebSocket>();
            var coll = new ReadOnlyCollection <WebSocket>(list);

            list.Add(socket);
            return(new HandlerResult {
                Sockets = coll, Message = message
            });
        }
コード例 #5
0
 public async Task SendMessageToAllAsync(SendFormat message)
 {
     foreach (var pair in _connectionManager.GetAll())
     {
         if (pair.State == WebSocketState.Open)
         {
             await SendMessageAsync(pair, message).ConfigureAwait(false);
         }
     }
 }
コード例 #6
0
        private async Task SendingCycle(IReadOnlyCollection <WebSocket> sockets, SendFormat message)
        {
            if (sockets == null || message == null)
            {
                return;
            }

            foreach (var socket in sockets)
            {
                if (socket.State == WebSocketState.Open)
                {
                    await SendMessageAsync(socket, message).ConfigureAwait(false);
                }
            }
        }
コード例 #7
0
        //---------------------------- Message sending ---------------------------------
        public async Task SendMessageAsync(WebSocket socket, SendFormat message)
        {
            if (socket.State != WebSocketState.Open)
            {
                return;
            }

            var serializedMessage = JsonConvert.SerializeObject(message, _sendFormatFactory.Settings);

            try
            {
                await socket.SendAsync(buffer : new ArraySegment <byte>(array: Encoding.UTF8.GetBytes(serializedMessage)),
                                       messageType : WebSocketMessageType.Text,
                                       endOfMessage : true,
                                       cancellationToken : CancellationToken.None).ConfigureAwait(false);
            }
            catch (Exception e)
            {
                _logger.LogWarning(e.Message);
            }
        }
コード例 #8
0
        public async Task <HandlerResult> AddFriend(AddFriendArguments arguments, WebSocket socket)
        {
            var userInfoTo = arguments.User;
            var userFrom   = await _unitOfWork.UserManager.FindByIdAsync(arguments.UserFrom.Id);

            var userTo = await _unitOfWork.UserManager.FindByIdAsync(userInfoTo.Id);

            // if this method was invoked from a user who started frendship request
            // we just send FrendRequest to another user
            IReadOnlyCollection <WebSocket> sockets = null;
            SendFormat message = null;

            if (arguments.Initiator)
            {
                sockets = _connectionManager.GetSocketsByUser(userTo);
                message = _sendFormatFactory.FriendRequest(arguments.UserFrom);
                await _unitOfWork.Friends.AddFriend(userFrom, userTo);

                await _unitOfWork.SaveAsync();
            }
            // if user just confirming the request, then send FriendConfirmed messages to initiator
            else
            {
                sockets = _connectionManager.GetSocketsByUser(userTo);
                message = _sendFormatFactory.FriendConfirmed(arguments.UserFrom, arguments.Confirmed);
                if (arguments.Confirmed)
                {
                    await _unitOfWork.Friends.AddFriend(userFrom, userTo);
                }
                else
                {
                    await _unitOfWork.Friends.Delete(userTo, userFrom);
                }
                await _unitOfWork.SaveAsync();
            }
            return(CreateResult(sockets, message));
        }
コード例 #9
0
        private void fnMakeSendData_KICC(DataTable dtTmp, string CompanyID_Resort, string CompanyID_Van)
        {
            try
            {
                int cnt_tot_11 = 0; /*일반건수    */
                int amt_tot_11 = 0; /*일반합계    */
                int cnt_tot_12 = 0; /*일반취소건수*/
                int amt_tot_12 = 0; /*일반취소합계*/
                int cnt_tot_21 = 0; /*할부건수    */
                int amt_tot_21 = 0; /*할부합계    */
                int cnt_tot_22 = 0; /*할부취소건수*/
                int amt_tot_22 = 0; /*할부취소합계*/

                /*☆★☆★☆★☆★☆★☆★☆★☆★☆★☆★☆★☆★☆★☆★☆★☆★☆★☆★☆★☆★☆★☆★☆★☆★☆★☆★☆★*/
                //EDI START RECORD
                /*☆★☆★☆★☆★☆★☆★☆★☆★☆★☆★☆★☆★☆★☆★☆★☆★☆★☆★☆★☆★☆★☆★☆★☆★☆★☆★☆★*/

                string MakeFileDate = System.DateTime.Now.ToString("yyMMdd");

                string str_EDI_START_RECORD = SendFormat.MakeRecord_EDI_Start_Record(MakeFileDate,
                                                                                     CompanyID_Resort,
                                                                                     CompanyID_Van);

                if (System.IO.File.Exists(Log.FilePath + "\\" + Log.FileName))
                {
                    System.IO.File.Delete(Log.FilePath + "\\" + Log.FileName);
                }


                if (str_EDI_START_RECORD.Length != 150)
                {
                    throw new Exception("CHECK FORMAT PLZ[EDI_START_RECORD]\n\r" + str_EDI_START_RECORD.Length);
                }

                EDI.Log.Log.SaveLog(str_EDI_START_RECORD);


                ////////////////////////////////////////////////////////////////////////////////////////////////////////////////
                // 매입사별로 Groupby
                ////////////////////////////////////////////////////////////////////////////////////////////////////////////////
                DataSetHelper helper = new Cls.GroupByHelper.DataSetHelper();

                DataTable dtCardGroupBy = helper.SelectGroupByInto("CARD_GROUPBY", dtTmp, "COMPANY_ID , VAN_ID", "", "COMPANY_ID , VAN_ID");

                for (int iCardGroup = 0; iCardGroup < dtCardGroupBy.Rows.Count; iCardGroup++)
                {
                    string companyid = dtCardGroupBy.Rows[iCardGroup]["COMPANY_ID"].ToString().Trim();
                    string vanid     = dtCardGroupBy.Rows[iCardGroup]["VAN_ID"].ToString().Trim();

                    //매입사 사업자번호로 그룹을 했다.
                    //가져온 데이터 테이블에서 사업자 번호로 데이터를 가져온다.
                    DataTable dtHeaderRecord = Basic.GetdtSelect(dtTmp, "VAN_ID = '" + vanid + "'", "AGREE_DATE ASC");

                    string SaleFrom = DateTime.Parse(dtHeaderRecord.Compute("MIN(AGREE_DATE)", "VAN_ID = '" + vanid + "' ").ToString()).ToString("yyMMdd");
                    string SaleTo   = DateTime.Parse(dtHeaderRecord.Compute("MAX(AGREE_DATE)", "VAN_ID = '" + vanid + "' ").ToString()).ToString("yyMMdd");

                    /*☆★☆★☆★☆★☆★☆★☆★☆★☆★☆★☆★☆★☆★☆★☆★☆★☆★☆★☆★☆★☆★☆★☆★☆★☆★☆★☆★*/
                    //  header
                    /*☆★☆★☆★☆★☆★☆★☆★☆★☆★☆★☆★☆★☆★☆★☆★☆★☆★☆★☆★☆★☆★☆★☆★☆★☆★☆★☆★*/

                    string str_HEADER_RECORD = SendFormat.MakeRecord_Header_Record(MakeFileDate,
                                                                                   vanid,
                                                                                   "",
                                                                                   companyid,
                                                                                   SaleFrom,
                                                                                   SaleTo
                                                                                   );
                    if (str_HEADER_RECORD.Length != 150)
                    {
                        throw new Exception("CHECK FORMAT PLZ[HEADER_RECORD]\n\r" + str_HEADER_RECORD);
                    }
                    EDI.Log.Log.SaveLog(str_HEADER_RECORD);



                    /*☆★☆★☆★☆★☆★☆★☆★☆★☆★☆★☆★☆★☆★☆★☆★☆★☆★☆★☆★☆★☆★☆★☆★☆★☆★☆★☆★*/
                    //  DataRecord
                    /*☆★☆★☆★☆★☆★☆★☆★☆★☆★☆★☆★☆★☆★☆★☆★☆★☆★☆★☆★☆★☆★☆★☆★☆★☆★☆★☆★*/
                    //TatalRecord 에 사용할 변수선언
                    ////////////////////////////////////////////////////////////////////////////////////////////////////////////////

                    int cnt_11 = 0; /*일반건수    */
                    int amt_11 = 0; /*일반합계    */
                    int cnt_12 = 0; /*일반취소건수*/
                    int amt_12 = 0; /*일반취소합계*/
                    int cnt_21 = 0; /*할부건수    */
                    int amt_21 = 0; /*할부합계    */
                    int cnt_22 = 0; /*할부취소건수*/
                    int amt_22 = 0; /*할부취소합계*/


                    for (int iheaderRecord = 0; iheaderRecord < dtHeaderRecord.Rows.Count; iheaderRecord++)
                    {
                        string recordkind = ""; /*레코드구분  */
                        string SaleCode   = ""; /*당초매출일자*/
                        string SaleKind   = ""; /*거래구분    */

                        if (dtHeaderRecord.Rows[iheaderRecord]["AGREE_YN"].ToString() == "Y" &&
                            dtHeaderRecord.Rows[iheaderRecord]["INSTALLMENT_CNT"].ToString() == "0")
                        {
                            //일반
                            recordkind = "11";
                            SaleCode   = "000000";
                            SaleKind   = "00";

                            cnt_11++;
                            amt_11 += int.Parse(dtHeaderRecord.Rows[iheaderRecord]["SALE_AMT"].ToString());

                            cnt_tot_11++;
                            amt_tot_11 += int.Parse(dtHeaderRecord.Rows[iheaderRecord]["SALE_AMT"].ToString());
                        }
                        else if (dtHeaderRecord.Rows[iheaderRecord]["AGREE_YN"].ToString() == "N" &&
                                 dtHeaderRecord.Rows[iheaderRecord]["INSTALLMENT_CNT"].ToString() == "0")
                        {
                            //일반취소
                            recordkind = "12";
                            SaleCode   = DateTime.Parse(dtHeaderRecord.Rows[iheaderRecord]["AGREE_DATE"].ToString().Trim()).ToString("yyMMdd");
                            SaleKind   = "00";

                            cnt_12++;
                            amt_12 += int.Parse(dtHeaderRecord.Rows[iheaderRecord]["SALE_AMT"].ToString());

                            cnt_tot_12++;
                            amt_tot_12 += int.Parse(dtHeaderRecord.Rows[iheaderRecord]["SALE_AMT"].ToString());
                        }
                        else if (dtHeaderRecord.Rows[iheaderRecord]["AGREE_YN"].ToString() == "Y" &&
                                 dtHeaderRecord.Rows[iheaderRecord]["INSTALLMENT_CNT"].ToString() != "0")
                        {
                            //할부
                            recordkind = "21";
                            SaleCode   = "000000";
                            SaleKind   = "02";

                            cnt_21++;
                            amt_21 += int.Parse(dtHeaderRecord.Rows[iheaderRecord]["SALE_AMT"].ToString());

                            cnt_tot_21++;
                            amt_tot_21 += int.Parse(dtHeaderRecord.Rows[iheaderRecord]["SALE_AMT"].ToString());
                        }
                        else if (dtHeaderRecord.Rows[iheaderRecord]["AGREE_YN"].ToString() == "N" &&
                                 dtHeaderRecord.Rows[iheaderRecord]["INSTALLMENT_CNT"].ToString() != "0")
                        {
                            //할부취소
                            recordkind = "22";
                            SaleKind   = "02";
                            SaleCode   = DateTime.Parse(dtHeaderRecord.Rows[iheaderRecord]["AGREE_DATE"].ToString().Trim()).ToString("yyMMdd");

                            cnt_22++;
                            amt_22 += int.Parse(dtHeaderRecord.Rows[iheaderRecord]["SALE_AMT"].ToString());

                            cnt_tot_22++;
                            amt_tot_22 += int.Parse(dtHeaderRecord.Rows[iheaderRecord]["SALE_AMT"].ToString());
                        }
                        else
                        {
                            throw new Exception("데이터가 / 일반 / 일반취소 / 할부 / 할부취소 범위에 속하지 않습니다.\n\r" +
                                                "승인번호 : [" + dtHeaderRecord.Rows[iheaderRecord]["AGREE_NO"].ToString().Trim() + "]\n\r" +
                                                "BILL NO  : [" + dtHeaderRecord.Rows[iheaderRecord]["BILL_NO"].ToString().Trim() + "]"
                                                );
                        }

                        string agreeno        = dtHeaderRecord.Rows[iheaderRecord]["AGREE_NO"].ToString().Trim();
                        string validThru      = dtHeaderRecord.Rows[iheaderRecord]["VALID_THRU"].ToString().Trim();
                        string agreedate      = DateTime.Parse(dtHeaderRecord.Rows[iheaderRecord]["AGREE_DATE"].ToString().Trim()).ToString("yyMMdd");
                        string saleamt        = dtHeaderRecord.Rows[iheaderRecord]["SALE_AMT"].ToString().Trim();
                        string installmentcnt = dtHeaderRecord.Rows[iheaderRecord]["INSTALLMENT_CNT"].ToString().Trim();
                        string posno          = dtHeaderRecord.Rows[iheaderRecord]["POS_NO"].ToString().Trim();
                        string billno         = dtHeaderRecord.Rows[iheaderRecord]["BILL_NO"].ToString().Trim();
                        string agreetime      = dtHeaderRecord.Rows[iheaderRecord]["AGREE_TIME"].ToString().Trim();
                        string keyinyn        = dtHeaderRecord.Rows[iheaderRecord]["KEYIN_YN"].ToString().Trim();
                        string cardno         = dtHeaderRecord.Rows[iheaderRecord]["CARD_NO"].ToString().Trim();


                        //전표번호가 8자리기때문에
                        //201107 0045 같은 전표 자리가 큰건을 예외처리 해주기위해서
                        //안넣어줘도 상관없을뜻한데
                        //안넣어주어서 에러가 발생할지 몰라서 넣어준다.
                        //edi 는 리얼데이터로 테스트를 해야되기때문에
                        //현재 운영중이므로 처리한다.
                        if (billno.Length > 8)
                        {
                            try{
                                string strf = billno.Substring(0, 6);
                                int    stre = int.Parse(billno.Substring(6, billno.Length - 6));

                                if (stre > 99)
                                {
                                    stre = 99;
                                }
                                billno = strf + stre.ToString();
                            }
                            catch {
                                billno = billno.Substring(0, 8);
                            }
                        }

                        if (billno.Length > 8)
                        {
                            billno = "3214";
                        }
                        string str_DATA_RECORD = SendFormat.MakeRecord_Data_Record(recordkind,
                                                                                   (iheaderRecord + 1).ToString(),
                                                                                   validThru,
                                                                                   agreedate,
                                                                                   SaleCode,
                                                                                   agreeno,
                                                                                   "0",
                                                                                   "0",
                                                                                   Math.Abs(int.Parse(saleamt)).ToString(),
                                                                                   installmentcnt,
                                                                                   posno,
                                                                                   billno,
                                                                                   SaleKind,
                                                                                   agreetime.Trim().Length != 4 ? agreetime : agreetime + "00",
                                                                                   keyinyn,
                                                                                   cardno
                                                                                   );



                        if (str_DATA_RECORD.Length != 150)
                        {
                            throw new Exception("CHECK FORMAT PLZ[DATA_RECORD]\n\r" + str_DATA_RECORD);
                        }
                        EDI.Log.Log.SaveLog(str_DATA_RECORD);
                    }
                    /*☆★☆★☆★☆★☆★☆★☆★☆★☆★☆★☆★☆★☆★☆★☆★☆★☆★☆★☆★☆★☆★☆★☆★☆★☆★☆★☆★*/
                    //  Total Record
                    /*☆★☆★☆★☆★☆★☆★☆★☆★☆★☆★☆★☆★☆★☆★☆★☆★☆★☆★☆★☆★☆★☆★☆★☆★☆★☆★☆★*/

                    /*
                     *
                     * 갯수 금액 검증
                     *
                     * -------------------------------------------------------------------------------------------------------------*/

                    /*일반건수    */
                    string check_cnt_11 = dtHeaderRecord.Compute("COUNT(AGREE_YN)", "AGREE_YN = 'Y' AND INSTALLMENT_CNT = 0").ToString();
                    /*일반합계    */
                    string check_amt_11 = dtHeaderRecord.Compute("SUM(SALE_AMT)", "AGREE_YN = 'Y' AND INSTALLMENT_CNT = 0").ToString();
                    check_amt_11 = check_amt_11 == "" ? "0" : check_amt_11;

                    /*일반취소건수*/
                    string check_cnt_12 = dtHeaderRecord.Compute("COUNT(AGREE_YN)", "AGREE_YN = 'N' AND INSTALLMENT_CNT = 0").ToString();
                    /*일반취소합계*/
                    string check_amt_12 = dtHeaderRecord.Compute("SUM(SALE_AMT)", "AGREE_YN = 'N' AND INSTALLMENT_CNT = 0").ToString();
                    check_amt_12 = check_amt_12 == "" ? "0" : check_amt_12;

                    /*할부건수    */
                    string check_cnt_21 = dtHeaderRecord.Compute("COUNT(AGREE_YN)", "AGREE_YN = 'Y' AND INSTALLMENT_CNT <> 0").ToString();
                    /*할부합계    */
                    string check_amt_21 = dtHeaderRecord.Compute("SUM(SALE_AMT)", "AGREE_YN = 'Y' AND INSTALLMENT_CNT <> 0").ToString();
                    check_amt_21 = check_amt_21 == "" ? "0" : check_amt_21;

                    /*할부취소건수*/
                    string check_cnt_22 = dtHeaderRecord.Compute("COUNT(SALE_AMT)", "AGREE_YN = 'N' AND INSTALLMENT_CNT <> 0").ToString();
                    /*할부취소합계*/
                    string check_amt_22 = dtHeaderRecord.Compute("SUM(SALE_AMT)", "AGREE_YN = 'N' AND INSTALLMENT_CNT <> 0").ToString();
                    check_amt_22 = check_amt_22 == "" ? "0" : check_amt_22;

                    /*-------------------------------------------------------------------------------------------------------------*/

                    if (cnt_11 != int.Parse(check_cnt_11))
                    {
                        throw new Exception("일반건수가 잘못되었습니다");
                    }
                    else if (amt_11 != int.Parse(check_amt_11))
                    {
                        throw new Exception("일반합계가 잘못되었습니다");
                    }
                    else if (cnt_12 != int.Parse(check_cnt_12))
                    {
                        throw new Exception("일반취소건수가 잘못되었습니다");
                    }
                    else if (amt_12 != int.Parse(check_amt_12))
                    {
                        throw new Exception("일반취소합계가 잘못되었습니다");
                    }
                    else if (cnt_21 != int.Parse(check_cnt_21))
                    {
                        throw new Exception("할부건수가 잘못되었습니다");
                    }
                    else if (amt_21 != int.Parse(check_amt_21))
                    {
                        throw new Exception("할부합계가 잘못되었습니다");
                    }
                    else if (cnt_22 != int.Parse(check_cnt_22))
                    {
                        throw new Exception("할부취소건수가 잘못되었습니다");
                    }
                    else if (amt_22 != int.Parse(check_amt_22))
                    {
                        throw new Exception("할부취소합계가 잘못되었습니다");
                    }

                    /*-------------------------------------------------------------------------------------------------------------*/

                    string str_Total_Record = SendFormat.MakeRecord_Totol_Record(
                        MakeFileDate,                                                              //0
                        cnt_11.ToString().Trim(),                                                  //1
                        amt_11.ToString().Trim(),                                                  //2
                        "0",
                        amt_11.ToString().Trim(),                                                  //4
                        cnt_12.ToString().Trim(),                                                  //5
                        Math.Abs(amt_12).ToString().Trim(),                                        //6
                        "0",
                        Math.Abs(amt_12).ToString().Trim(),
                        cnt_21.ToString().Trim(),
                        amt_21.ToString().Trim(),
                        cnt_22.ToString().Trim(),
                        Math.Abs(amt_22).ToString().Trim()

                        );

                    if (str_Total_Record.Length != 150)
                    {
                        throw new Exception("CHECK FORMAT PLZ[Total_Record]\n\r" + str_Total_Record);
                    }
                    EDI.Log.Log.SaveLog(str_Total_Record);
                }
                /*☆★☆★☆★☆★☆★☆★☆★☆★☆★☆★☆★☆★☆★☆★☆★☆★☆★☆★☆★☆★☆★☆★☆★☆★☆★☆★☆★*/
                //  Total Record
                /*☆★☆★☆★☆★☆★☆★☆★☆★☆★☆★☆★☆★☆★☆★☆★☆★☆★☆★☆★☆★☆★☆★☆★☆★☆★☆★☆★*/

                /*-------------------------------------------------------------------------------------------------------------
                * 갯수 금액 검증 [전체데이터 비교]
                *  -------------------------------------------------------------------------------------------------------------*/


                /*일반건수    */
                string check_cnt_tot_11 = dtTmp.Compute("COUNT(AGREE_YN)", "AGREE_YN = 'Y' AND INSTALLMENT_CNT = 0").ToString();
                /*일반합계    */
                string check_amt_tot_11 = dtTmp.Compute("SUM(SALE_AMT)", "AGREE_YN = 'Y' AND INSTALLMENT_CNT = 0").ToString();
                check_amt_tot_11 = check_amt_tot_11 == "" ? "0" : check_amt_tot_11;

                /*일반취소건수*/
                string check_cnt_tot_12 = dtTmp.Compute("COUNT(AGREE_YN)", "AGREE_YN = 'N' AND INSTALLMENT_CNT = 0").ToString();
                /*일반취소합계*/
                string check_amt_tot_12 = dtTmp.Compute("SUM(SALE_AMT)", "AGREE_YN = 'N' AND INSTALLMENT_CNT = 0").ToString();
                check_amt_tot_12 = check_amt_tot_12 == "" ? "0" : check_amt_tot_12;

                /*할부건수    */
                string check_cnt_tot_21 = dtTmp.Compute("COUNT(AGREE_YN)", "AGREE_YN = 'Y' AND INSTALLMENT_CNT <> 0").ToString();
                /*할부합계    */
                string check_amt_tot_21 = dtTmp.Compute("SUM(SALE_AMT)", "AGREE_YN = 'Y' AND INSTALLMENT_CNT <> 0").ToString();
                check_amt_tot_21 = check_amt_tot_21 == "" ? "0" : check_amt_tot_21;

                /*할부취소건수*/
                string check_cnt_tot_22 = dtTmp.Compute("COUNT(SALE_AMT)", "AGREE_YN = 'N' AND INSTALLMENT_CNT <> 0").ToString();
                /*할부취소합계*/
                string check_amt_tot_22 = dtTmp.Compute("SUM(SALE_AMT)", "AGREE_YN = 'N' AND INSTALLMENT_CNT <> 0").ToString();
                check_amt_tot_22 = check_amt_tot_22 == "" ? "0" : check_amt_tot_22;

                /*-------------------------------------------------------------------------------------------------------------*/

                if (cnt_tot_11 != int.Parse(check_cnt_tot_11))
                {
                    throw new Exception("일반건수가 잘못되었습니다. (Total)");
                }
                else if (amt_tot_11 != int.Parse(check_amt_tot_11))
                {
                    throw new Exception("일반합계가 잘못되었습니다. (Total)");
                }
                else if (cnt_tot_12 != int.Parse(check_cnt_tot_12))
                {
                    throw new Exception("일반취소건수가 잘못되었습니다. (Total)");
                }
                else if (amt_tot_12 != int.Parse(check_amt_tot_12))
                {
                    throw new Exception("일반취소합계가 잘못되었습니다. (Total)");
                }
                else if (cnt_tot_21 != int.Parse(check_cnt_tot_21))
                {
                    throw new Exception("할부건수가 잘못되었습니다. (Total)");
                }
                else if (amt_tot_21 != int.Parse(check_amt_tot_21))
                {
                    throw new Exception("할부합계가 잘못되었습니다. (Total)");
                }
                else if (cnt_tot_22 != int.Parse(check_cnt_tot_22))
                {
                    throw new Exception("할부취소건수가 잘못되었습니다. (Total)");
                }
                else if (amt_tot_22 != int.Parse(check_amt_tot_22))
                {
                    throw new Exception("할부취소합계가 잘못되었습니다. (Total)");
                }

                string str_EDI_END_RECORD = SendFormat.MakeRecord_EDI_End_Record(dtCardGroupBy.Rows.Count.ToString(),
                                                                                 cnt_tot_11.ToString(),
                                                                                 amt_tot_11.ToString(),
                                                                                 "0",
                                                                                 amt_tot_11.ToString(),
                                                                                 cnt_tot_12.ToString(),
                                                                                 Math.Abs(amt_tot_12).ToString(),
                                                                                 "0",
                                                                                 Math.Abs(amt_tot_12).ToString(),
                                                                                 cnt_tot_21.ToString(),
                                                                                 amt_tot_21.ToString(),
                                                                                 cnt_tot_22.ToString(),
                                                                                 Math.Abs(amt_tot_22).ToString()
                                                                                 );

                if (str_EDI_END_RECORD.Length != 150)
                {
                    throw new Exception("CHECK FORMAT PLZ[EDI_END_RECORD]\n\r" + str_EDI_END_RECORD);
                }
                EDI.Log.Log.SaveLog(str_EDI_END_RECORD);
            }
            catch (Exception ex)
            {
                throw ex;
            }
            finally
            {
                Basic.SetCursor(this, true);
            }
        }
コード例 #10
0
        private string fnMakeSendData(DataTable dtTmp, string CompanyID_Resort, string CompanyID_Van, string FolderPath, string FileName)
        {
            try
            {
                Log.FileName = FileName;
                Log.FilePath = FolderPath;

                string vRet = "";


                int cnt_tot_11 = 0; /*일반건수    */
                int amt_tot_11 = 0; /*일반합계    */
                int cnt_tot_12 = 0; /*일반취소건수*/
                int amt_tot_12 = 0; /*일반취소합계*/
                int cnt_tot_21 = 0; /*할부건수    */
                int amt_tot_21 = 0; /*할부합계    */
                int cnt_tot_22 = 0; /*할부취소건수*/
                int amt_tot_22 = 0; /*할부취소합계*/

                /*☆★☆★☆★☆★☆★☆★☆★☆★☆★☆★☆★☆★☆★☆★☆★☆★☆★☆★☆★☆★☆★☆★☆★☆★☆★☆★☆★*/
                //EDI START RECORD
                /*☆★☆★☆★☆★☆★☆★☆★☆★☆★☆★☆★☆★☆★☆★☆★☆★☆★☆★☆★☆★☆★☆★☆★☆★☆★☆★☆★*/

                string MakeFileDate = System.DateTime.Now.ToString("yyMMdd");

                string str_EDI_START_RECORD = SendFormat.MakeRecord_EDI_Start_Record(MakeFileDate,
                                                                                     CompanyID_Resort,
                                                                                     CompanyID_Van);

                if (System.IO.File.Exists(Log.FilePath + "\\" + Log.FileName + ".txt"))
                {
                    System.IO.File.Delete(Log.FilePath + "\\" + Log.FileName + ".txt");
                }

                EDI.Log.Log.SaveLog(str_EDI_START_RECORD);
                vRet += str_EDI_START_RECORD;

                ////////////////////////////////////////////////////////////////////////////////////////////////////////////////
                // 매입사별로 Groupby
                ////////////////////////////////////////////////////////////////////////////////////////////////////////////////
                DataSetHelper helper = new Cls.GroupByHelper.DataSetHelper();

                DataTable dtCardGroupBy = helper.SelectGroupByInto("CARD_GROUPBY", dtTmp, "COMPANY_ID , VAN_ID", "", "COMPANY_ID , VAN_ID");

                for (int iCardGroup = 0; iCardGroup < dtCardGroupBy.Rows.Count; iCardGroup++)
                {
                    string companyid = dtCardGroupBy.Rows[iCardGroup]["COMPANY_ID"].ToString().Trim();
                    string vanid     = dtCardGroupBy.Rows[iCardGroup]["VAN_ID"].ToString().Trim();

                    //매입사 사업자번호로 그룹을 했다.
                    //가져온 데이터 테이블에서 사업자 번호로 데이터를 가져온다.
                    DataTable dtHeaderRecord = Basic.GetdtSelect(dtTmp, "COMPANY_ID = '" + companyid + "'", "AGREE_DATE ASC");

                    string SaleFrom = DateTime.Parse(dtHeaderRecord.Compute("MIN(AGREE_DATE)", "").ToString()).ToString("yyMMdd");
                    string SaleTo   = DateTime.Parse(dtHeaderRecord.Compute("MAX(AGREE_DATE)", "").ToString()).ToString("yyMMdd");

                    /*☆★☆★☆★☆★☆★☆★☆★☆★☆★☆★☆★☆★☆★☆★☆★☆★☆★☆★☆★☆★☆★☆★☆★☆★☆★☆★☆★*/
                    //  header
                    /*☆★☆★☆★☆★☆★☆★☆★☆★☆★☆★☆★☆★☆★☆★☆★☆★☆★☆★☆★☆★☆★☆★☆★☆★☆★☆★☆★*/

                    string str_HEADER_RECORD = SendFormat.MakeRecord_Header_Record(MakeFileDate,
                                                                                   vanid,
                                                                                   "",
                                                                                   companyid,
                                                                                   SaleFrom,
                                                                                   SaleTo
                                                                                   );
                    EDI.Log.Log.SaveLog(str_HEADER_RECORD);
                    vRet += str_HEADER_RECORD;


                    /*☆★☆★☆★☆★☆★☆★☆★☆★☆★☆★☆★☆★☆★☆★☆★☆★☆★☆★☆★☆★☆★☆★☆★☆★☆★☆★☆★*/
                    //  DataRecord
                    /*☆★☆★☆★☆★☆★☆★☆★☆★☆★☆★☆★☆★☆★☆★☆★☆★☆★☆★☆★☆★☆★☆★☆★☆★☆★☆★☆★*/
                    //TatalRecord 에 사용할 변수선언
                    ////////////////////////////////////////////////////////////////////////////////////////////////////////////////

                    int cnt_11 = 0; /*일반건수    */
                    int amt_11 = 0; /*일반합계    */
                    int cnt_12 = 0; /*일반취소건수*/
                    int amt_12 = 0; /*일반취소합계*/
                    int cnt_21 = 0; /*할부건수    */
                    int amt_21 = 0; /*할부합계    */
                    int cnt_22 = 0; /*할부취소건수*/
                    int amt_22 = 0; /*할부취소합계*/


                    for (int iheaderRecord = 0; iheaderRecord < dtHeaderRecord.Rows.Count; iheaderRecord++)
                    {
                        string recordkind = ""; /*레코드구분  */
                        string SaleCode   = ""; /*당초매출일자*/
                        string SaleKind   = ""; /*거래구분    */

                        if (dtHeaderRecord.Rows[iheaderRecord]["AGREE_YN"].ToString() == "Y" &&
                            dtHeaderRecord.Rows[iheaderRecord]["INSTALLMENT_CNT"].ToString() == "0")
                        {
                            //일반
                            recordkind = "11";
                            SaleCode   = "000000";
                            SaleKind   = "00";

                            cnt_11++;
                            amt_11 += int.Parse(dtHeaderRecord.Rows[iheaderRecord]["SALE_AMT"].ToString());

                            cnt_tot_11++;
                            amt_tot_11 += int.Parse(dtHeaderRecord.Rows[iheaderRecord]["SALE_AMT"].ToString());
                        }
                        else if (dtHeaderRecord.Rows[iheaderRecord]["AGREE_YN"].ToString() == "N" &&
                                 dtHeaderRecord.Rows[iheaderRecord]["INSTALLMENT_CNT"].ToString() == "0")
                        {
                            //일반취소
                            recordkind = "12";
                            SaleCode   = DateTime.Parse(dtHeaderRecord.Rows[iheaderRecord]["AGREE_DATE"].ToString().Trim()).ToString("yyMMdd");
                            SaleKind   = "00";

                            cnt_12++;
                            amt_12 += int.Parse(dtHeaderRecord.Rows[iheaderRecord]["SALE_AMT"].ToString());

                            cnt_tot_12++;
                            amt_tot_12 += int.Parse(dtHeaderRecord.Rows[iheaderRecord]["SALE_AMT"].ToString());
                        }
                        else if (dtHeaderRecord.Rows[iheaderRecord]["AGREE_YN"].ToString() == "Y" &&
                                 dtHeaderRecord.Rows[iheaderRecord]["INSTALLMENT_CNT"].ToString() != "0")
                        {
                            //할부
                            recordkind = "21";
                            SaleCode   = "000000";
                            SaleKind   = "02";

                            cnt_21++;
                            amt_21 += int.Parse(dtHeaderRecord.Rows[iheaderRecord]["SALE_AMT"].ToString());

                            cnt_tot_21++;
                            amt_tot_21 += int.Parse(dtHeaderRecord.Rows[iheaderRecord]["SALE_AMT"].ToString());
                        }
                        else if (dtHeaderRecord.Rows[iheaderRecord]["AGREE_YN"].ToString() == "N" &&
                                 dtHeaderRecord.Rows[iheaderRecord]["INSTALLMENT_CNT"].ToString() != "0")
                        {
                            //할부취소
                            recordkind = "22";
                            SaleKind   = "02";
                            SaleCode   = DateTime.Parse(dtHeaderRecord.Rows[iheaderRecord]["AGREE_DATE"].ToString().Trim()).ToString("yyMMdd");

                            cnt_22++;
                            amt_22 += int.Parse(dtHeaderRecord.Rows[iheaderRecord]["SALE_AMT"].ToString());

                            cnt_tot_22++;
                            amt_tot_22 += int.Parse(dtHeaderRecord.Rows[iheaderRecord]["SALE_AMT"].ToString());
                        }
                        else
                        {
                            throw new Exception("데이터가 / 일반 / 일반취소 / 할부 / 할부취소 범위에 속하지 않습니다.\n\r" +
                                                "승인번호 : [" + dtHeaderRecord.Rows[iheaderRecord]["AGREE_NO"].ToString().Trim() + "]\n\r" +
                                                "BILL NO  : [" + dtHeaderRecord.Rows[iheaderRecord]["BILL_NO"].ToString().Trim() + "]"
                                                );
                        }

                        string agreeno        = dtHeaderRecord.Rows[iheaderRecord]["AGREE_NO"].ToString().Trim();
                        string validThru      = dtHeaderRecord.Rows[iheaderRecord]["VALID_THRU"].ToString().Trim();
                        string agreedate      = DateTime.Parse(dtHeaderRecord.Rows[iheaderRecord]["AGREE_DATE"].ToString().Trim()).ToString("yyMMdd");
                        string saleamt        = dtHeaderRecord.Rows[iheaderRecord]["SALE_AMT"].ToString().Trim();
                        string installmentcnt = dtHeaderRecord.Rows[iheaderRecord]["INSTALLMENT_CNT"].ToString().Trim();
                        string posno          = dtHeaderRecord.Rows[iheaderRecord]["POS_NO"].ToString().Trim();
                        string billno         = dtHeaderRecord.Rows[iheaderRecord]["BILL_NO"].ToString().Trim();
                        string agreetime      = dtHeaderRecord.Rows[iheaderRecord]["AGREE_TIME"].ToString().Trim();
                        string keyinyn        = dtHeaderRecord.Rows[iheaderRecord]["KEYIN_YN"].ToString().Trim();
                        string cardno         = dtHeaderRecord.Rows[iheaderRecord]["CARD_NO"].ToString().Trim();

                        string str_DATA_RECORD = SendFormat.MakeRecord_Data_Record(recordkind,
                                                                                   (iheaderRecord + 1).ToString(),
                                                                                   validThru,
                                                                                   agreedate,
                                                                                   SaleCode,
                                                                                   agreeno,
                                                                                   "0",
                                                                                   "0",
                                                                                   Math.Abs(int.Parse(saleamt)).ToString(),
                                                                                   installmentcnt,
                                                                                   posno,
                                                                                   billno,
                                                                                   SaleKind,
                                                                                   agreetime,
                                                                                   keyinyn,
                                                                                   cardno
                                                                                   );



                        EDI.Log.Log.SaveLog(str_DATA_RECORD);
                        vRet += str_DATA_RECORD;
                    }
                    /*☆★☆★☆★☆★☆★☆★☆★☆★☆★☆★☆★☆★☆★☆★☆★☆★☆★☆★☆★☆★☆★☆★☆★☆★☆★☆★☆★*/
                    //  Total Record
                    /*☆★☆★☆★☆★☆★☆★☆★☆★☆★☆★☆★☆★☆★☆★☆★☆★☆★☆★☆★☆★☆★☆★☆★☆★☆★☆★☆★*/

                    /*
                     *
                     * 갯수 금액 검증
                     *
                     * -------------------------------------------------------------------------------------------------------------*/

                    /*일반건수    */
                    string check_cnt_11 = dtHeaderRecord.Compute("COUNT(AGREE_YN)", "AGREE_YN = 'Y' AND INSTALLMENT_CNT = 0").ToString();
                    /*일반합계    */
                    string check_amt_11 = dtHeaderRecord.Compute("SUM(SALE_AMT)", "AGREE_YN = 'Y' AND INSTALLMENT_CNT = 0").ToString();
                    check_amt_11 = check_amt_11 == "" ? "0" : check_amt_11;

                    /*일반취소건수*/
                    string check_cnt_12 = dtHeaderRecord.Compute("COUNT(AGREE_YN)", "AGREE_YN = 'N' AND INSTALLMENT_CNT = 0").ToString();
                    /*일반취소합계*/
                    string check_amt_12 = dtHeaderRecord.Compute("SUM(SALE_AMT)", "AGREE_YN = 'N' AND INSTALLMENT_CNT = 0").ToString();
                    check_amt_12 = check_amt_12 == "" ? "0" : check_amt_12;

                    /*할부건수    */
                    string check_cnt_21 = dtHeaderRecord.Compute("COUNT(AGREE_YN)", "AGREE_YN = 'Y' AND INSTALLMENT_CNT <> 0").ToString();
                    /*할부합계    */
                    string check_amt_21 = dtHeaderRecord.Compute("SUM(SALE_AMT)", "AGREE_YN = 'Y' AND INSTALLMENT_CNT <> 0").ToString();
                    check_amt_21 = check_amt_21 == "" ? "0" : check_amt_21;

                    /*할부취소건수*/
                    string check_cnt_22 = dtHeaderRecord.Compute("COUNT(SALE_AMT)", "AGREE_YN = 'N' AND INSTALLMENT_CNT <> 0").ToString();
                    /*할부취소합계*/
                    string check_amt_22 = dtHeaderRecord.Compute("SUM(SALE_AMT)", "AGREE_YN = 'N' AND INSTALLMENT_CNT <> 0").ToString();
                    check_amt_22 = check_amt_22 == "" ? "0" : check_amt_22;

                    /*-------------------------------------------------------------------------------------------------------------*/

                    if (cnt_11 != int.Parse(check_cnt_11))
                    {
                        Basic.ShowMessage(1, "일반건수가 잘못되었습니다.");
                        return("");
                    }
                    else if (amt_11 != int.Parse(check_amt_11))
                    {
                        Basic.ShowMessage(1, "일반합계가 잘못되었습니다.");
                        return("");
                    }
                    else if (cnt_12 != int.Parse(check_cnt_12))
                    {
                        Basic.ShowMessage(1, "일반취소건수가 잘못되었습니다.");
                        return("");
                    }
                    else if (amt_12 != int.Parse(check_amt_12))
                    {
                        Basic.ShowMessage(1, "일반취소합계가 잘못되었습니다.");
                        return("");
                    }
                    else if (cnt_21 != int.Parse(check_cnt_21))
                    {
                        Basic.ShowMessage(1, "할부건수가 잘못되었습니다.");
                        return("");
                    }
                    else if (amt_21 != int.Parse(check_amt_21))
                    {
                        Basic.ShowMessage(1, "할부합계가 잘못되었습니다.");
                        return("");
                    }
                    else if (cnt_22 != int.Parse(check_cnt_22))
                    {
                        Basic.ShowMessage(1, "할부취소건수가 잘못되었습니다.");
                        return("");
                    }
                    else if (amt_22 != int.Parse(check_amt_22))
                    {
                        Basic.ShowMessage(1, "할부취소합계가 잘못되었습니다.");
                        return("");
                    }

                    /*-------------------------------------------------------------------------------------------------------------*/

                    string str_Total_Record = SendFormat.MakeRecord_Totol_Record(
                        MakeFileDate,
                        cnt_11.ToString().Trim(),
                        "0",
                        "0",
                        amt_11.ToString().Trim(),
                        cnt_12.ToString().Trim(),
                        "0",
                        "0",
                        Math.Abs(amt_12).ToString().Trim(),
                        cnt_21.ToString().Trim(),
                        amt_21.ToString().Trim(),
                        cnt_22.ToString().Trim(),
                        Math.Abs(amt_22).ToString().Trim()

                        );


                    EDI.Log.Log.SaveLog(str_Total_Record);
                    vRet += str_Total_Record;
                }
                /*☆★☆★☆★☆★☆★☆★☆★☆★☆★☆★☆★☆★☆★☆★☆★☆★☆★☆★☆★☆★☆★☆★☆★☆★☆★☆★☆★*/
                //  Total Record
                /*☆★☆★☆★☆★☆★☆★☆★☆★☆★☆★☆★☆★☆★☆★☆★☆★☆★☆★☆★☆★☆★☆★☆★☆★☆★☆★☆★*/

                /*-------------------------------------------------------------------------------------------------------------
                * 갯수 금액 검증 [전체데이터 비교]
                *  -------------------------------------------------------------------------------------------------------------*/


                /*일반건수    */
                string check_cnt_tot_11 = dtTmp.Compute("COUNT(AGREE_YN)", "AGREE_YN = 'Y' AND INSTALLMENT_CNT = 0").ToString();
                /*일반합계    */
                string check_amt_tot_11 = dtTmp.Compute("SUM(SALE_AMT)", "AGREE_YN = 'Y' AND INSTALLMENT_CNT = 0").ToString();
                check_amt_tot_11 = check_amt_tot_11 == "" ? "0" : check_amt_tot_11;

                /*일반취소건수*/
                string check_cnt_tot_12 = dtTmp.Compute("COUNT(AGREE_YN)", "AGREE_YN = 'N' AND INSTALLMENT_CNT = 0").ToString();
                /*일반취소합계*/
                string check_amt_tot_12 = dtTmp.Compute("SUM(SALE_AMT)", "AGREE_YN = 'N' AND INSTALLMENT_CNT = 0").ToString();
                check_amt_tot_12 = check_amt_tot_12 == "" ? "0" : check_amt_tot_12;

                /*할부건수    */
                string check_cnt_tot_21 = dtTmp.Compute("COUNT(AGREE_YN)", "AGREE_YN = 'Y' AND INSTALLMENT_CNT <> 0").ToString();
                /*할부합계    */
                string check_amt_tot_21 = dtTmp.Compute("SUM(SALE_AMT)", "AGREE_YN = 'Y' AND INSTALLMENT_CNT <> 0").ToString();
                check_amt_tot_21 = check_amt_tot_21 == "" ? "0" : check_amt_tot_21;

                /*할부취소건수*/
                string check_cnt_tot_22 = dtTmp.Compute("COUNT(SALE_AMT)", "AGREE_YN = 'N' AND INSTALLMENT_CNT <> 0").ToString();
                /*할부취소합계*/
                string check_amt_tot_22 = dtTmp.Compute("SUM(SALE_AMT)", "AGREE_YN = 'N' AND INSTALLMENT_CNT <> 0").ToString();
                check_amt_tot_22 = check_amt_tot_22 == "" ? "0" : check_amt_tot_22;

                /*-------------------------------------------------------------------------------------------------------------*/

                if (cnt_tot_11 != int.Parse(check_cnt_tot_11))
                {
                    Basic.ShowMessage(1, "일반건수가 잘못되었습니다. (Total) ");
                    return("");
                }
                else if (amt_tot_11 != int.Parse(check_amt_tot_11))
                {
                    Basic.ShowMessage(1, "일반합계가 잘못되었습니다. (Total) ");
                    return("");
                }
                else if (cnt_tot_12 != int.Parse(check_cnt_tot_12))
                {
                    Basic.ShowMessage(1, "일반취소건수가 잘못되었습니다. (Total) ");
                    return("");
                }
                else if (amt_tot_12 != int.Parse(check_amt_tot_12))
                {
                    Basic.ShowMessage(1, "일반취소합계가 잘못되었습니다. (Total) ");
                    return("");
                }
                else if (cnt_tot_21 != int.Parse(check_cnt_tot_21))
                {
                    Basic.ShowMessage(1, "할부건수가 잘못되었습니다. (Total) ");
                    return("");
                }
                else if (amt_tot_21 != int.Parse(check_amt_tot_21))
                {
                    Basic.ShowMessage(1, "할부합계가 잘못되었습니다. (Total) ");
                    return("");
                }
                else if (cnt_tot_22 != int.Parse(check_cnt_tot_22))
                {
                    Basic.ShowMessage(1, "할부취소건수가 잘못되었습니다. (Total) ");
                    return("");
                }
                else if (amt_tot_22 != int.Parse(check_amt_tot_22))
                {
                    Basic.ShowMessage(1, "할부취소합계가 잘못되었습니다. (Total) ");
                    return("");
                }

                string str_EDI_END_RECORD = SendFormat.MakeRecord_EDI_End_Record(dtCardGroupBy.Rows.Count.ToString(),
                                                                                 cnt_tot_11.ToString(),
                                                                                 "0",
                                                                                 "0",
                                                                                 amt_tot_11.ToString(),
                                                                                 cnt_tot_12.ToString(),
                                                                                 "0",
                                                                                 "0",
                                                                                 Math.Abs(amt_tot_12).ToString(),
                                                                                 cnt_tot_21.ToString(),
                                                                                 amt_tot_21.ToString(),
                                                                                 cnt_tot_22.ToString(),
                                                                                 Math.Abs(amt_tot_22).ToString()
                                                                                 );


                EDI.Log.Log.SaveLog(str_EDI_END_RECORD);
                vRet += str_EDI_END_RECORD;
                return(vRet);
            }
            catch (Exception ex)
            {
                throw ex;
            }
        }
コード例 #11
0
        /// <summary>
        /// Call WebAPI 並依照輸入的型別取回結果
        /// </summary>
        /// <param name="url">API位置</param>
        /// <param name="TModel">輸出型別的Model</param>
        /// <param name="MethodCode">HTTP Method</param>
        /// <returns></returns>
        public T ApiResult(string url, T TModel, HttpMethod MethodCode = HttpMethod.Get, SendFormat FormatCode = SendFormat.SeparateSeparately)
        {
            try
            {
                switch (MethodCode)
                {
                case HttpMethod.Post:
                    this.result = Encoding.UTF8.GetString(client.UploadValues(url, "POST", nvc));
                    break;

                case HttpMethod.Put:
                    client.Headers.Add("Content-Type", "application/x-www-form-urlencoded");
                    if (FormatCode == SendFormat.SeparateSeparately)
                    {
                        generateQueryStr();
                        url += this.QueryStr;
                    }
                    this.result = Encoding.UTF8.GetString(client.UploadValues(url, "PUT", nvc));
                    break;

                case HttpMethod.Delete:
                    if (FormatCode == SendFormat.SeparateSeparately)
                    {
                        generateQueryStr();
                        url += this.QueryStr;
                    }
                    this.result = Encoding.UTF8.GetString(client.UploadValues(url, "DELETE", nvc));
                    break;

                default:
                    generateQueryStr();
                    url        += this.QueryStr;
                    this.result = client.DownloadString(url);
                    break;
                }

                //當欄位值為null時忽略不轉成Json
                var settings = new JsonSerializerSettings
                {
                    NullValueHandling = NullValueHandling.Ignore
                };


                if (typeof(T) == typeof(string))
                {
                    TModel = (T)Convert.ChangeType(this.result, typeof(T));
                }
                else
                {
                    TModel = JsonConvert.DeserializeObject <T>(this.result, settings);
                }
            }
            catch (Exception ex)
            {
                string msg = ex.Message;
            }
            nvc.Clear();
            return(TModel);
        }
コード例 #12
0
 public async Task SendMessageAsync(string socketId, SendFormat message)
 {
     await SendMessageAsync(_connectionManager.GetSocketById(socketId), message).ConfigureAwait(false);
 }
コード例 #13
0
 private static HandlerResult CreateResult(IReadOnlyCollection <WebSocket> sockets, SendFormat message)
 {
     return(new HandlerResult {
         Sockets = sockets, Message = message
     });
 }