コード例 #1
0
        private async Task GetById(int Qusitonid)
        {
            HttpClient httpClient = new HttpClient
            {
                BaseAddress = new System.Uri("http://localhost:60671/")
            };

            httpClient.DefaultRequestHeaders.Clear();
            httpClient.DefaultRequestHeaders.Accept.Add(new System.Net.Http.Headers.MediaTypeWithQualityHeaderValue("application/json"));
            string str = $"api/qusition/getqusition/{Qusitonid}";
            HttpResponseMessage httpResponseMessage = await httpClient.GetAsync(str);

            if (httpResponseMessage.IsSuccessStatusCode)
            {
                qusition = await httpResponseMessage.Content.ReadAsAsync <Qusition>();

                if (qusition.Qlabel1 == "")
                {
                    Label1.Visibility = Visibility.Collapsed;
                }
                if (qusition.QLabel2 == "")
                {
                    Label2.Visibility = Visibility.Collapsed;
                }
                SetBlockValue();
                Qusitionid = qusition.Qusitionid;
                Askerid    = qusition.Askerid;
                await GetAllAnswer(qusition.Qusitionid);
            }
        }
コード例 #2
0
        protected override async void OnNavigatedTo(NavigationEventArgs e)
        {
            await NameMap.Read();

            if (e.Parameter is Qusition)
            {
                qusition = (Qusition)e.Parameter;
                if (qusition.Qlabel1 == "")
                {
                    Label1.Visibility = Visibility.Collapsed;
                }
                if (qusition.QLabel2 == "")
                {
                    Label2.Visibility = Visibility.Collapsed;
                }
                SetBlockValue();
                Qusitionid = qusition.Qusitionid;
                Askerid    = qusition.Askerid;
                await GetAllAnswer(qusition.Qusitionid);
            }
            else if (e.Parameter is Answershow answershow)
            {
                someoneshow = answershow;
                await GetById(someoneshow.Qusitionid);
            }
            else if (e.Parameter is int ID)
            {
                await GetById(ID);
            }
            base.OnNavigatedTo(e);
        }
コード例 #3
0
        public Qusition GetQusition(int Qusitionid)
        {
            SqlConnection sqlConnection = new SqlConnection(connectionstring);

            sqlConnection.Open();
            using (SqlCommand sqlCommand = sqlConnection.CreateCommand())
            {
                try
                {
                    string sql = "select * from QusitonTable where Qusitonid=@Qusitonid";
                    sqlCommand.CommandText = sql;
                    sqlCommand.Parameters.AddWithValue("@Qusitonid", Qusitionid);
                    SqlDataAdapter sqlDataAdapter = new SqlDataAdapter
                    {
                        SelectCommand = sqlCommand,
                    };
                    DataTable dataTable = new DataTable();
                    sqlDataAdapter.Fill(dataTable);
                    Qusition qusition = new Qusition();
                    foreach (DataRow item in dataTable.Rows)
                    {
                        qusition = GetQusitionRow(item);
                    }
                    return(qusition);
                }
                catch (SqlException)
                {
                    return(null);
                }
                finally
                {
                    sqlConnection.Close();
                }
            }
        }
コード例 #4
0
 protected override void OnNavigatedTo(NavigationEventArgs e)
 {
     base.OnNavigatedTo(e);
     if (e.Parameter is Qusition)
     {
         qusition = (Qusition)e.Parameter;
     }
     else if (e.Parameter is AnswerDraft)
     {
         answerDraft   = (AnswerDraft)e.Parameter;
         MyAnswer.Text = answerDraft.Content;
     }
 }
コード例 #5
0
        /// <summary>
        /// convert DataTable to Json
        /// </summary>
        /// <param name="dataRow"></param>
        /// <returns></returns>
        private Qusition GetQusitionRow(DataRow dataRow)
        {
            Qusition qusition = new Qusition
            {
                Qusitionid      = Convert.ToInt32(dataRow["Qusitonid"]),
                Askerid         = Convert.ToInt32(dataRow["Askerid"]),
                AskTime         = Convert.ToDateTime(dataRow["AskTime"].ToString()),
                UpAskTime       = Convert.ToDateTime(dataRow["UpAskTime"].ToString()),
                QusitionTitle   = dataRow["QusitonTitle"].ToString(),
                QusitionContent = dataRow["QusitonContent"].ToString(),
                Answerednum     = Convert.ToInt32(dataRow["Answerednum"]),
                Followednum     = Convert.ToInt32(dataRow["Followednum"]),
                Qlabel0         = dataRow["QLabel0"].ToString(),
                Qlabel1         = dataRow["QLabel1"].ToString(),
                Qlabel2         = dataRow["QLabel2"].ToString()
            };

            return(qusition);
        }
コード例 #6
0
        /// <summary>
        /// 用户提出问题
        /// </summary>
        /// <param name="Body"></param>
        /// <returns></returns>
        public bool PostnewQusition(Qusition qusition)
        {
            SqlConnection sqlConnection = new SqlConnection(connectionstring);

            string PostQ = "insert into QusitonTable (Askerid,AskTime,UpAskTime,QusitonTitle" +
                           ",QusitonContent,QLabel0,QLabel1,QLabel2) values(@Askerid,@AskTime,@UpAskTime,@QusitionTitle,@QusitionContent,@QLabel0,@QLabel1,@QLabel2);update UserTable set Qusitionnum = Qusitionnum+1 where Userid =@Userid;update LabelTable set LabelQnum=LabelQnum+1 where QLabel0=@Qlabel0"
            ;

            sqlConnection.Open();
            using (SqlCommand sqlCommand = sqlConnection.CreateCommand())
            {
                SqlTransaction sqlTransaction = sqlConnection.BeginTransaction();
                try
                {
                    sqlCommand.CommandText = PostQ;
                    sqlCommand.Transaction = sqlTransaction;
                    sqlCommand.Parameters.AddWithValue("@Askerid", qusition.Askerid);
                    sqlCommand.Parameters.AddWithValue("@AskTime", qusition.AskTime.ToString());
                    sqlCommand.Parameters.AddWithValue("@UpAskTime", qusition.UpAskTime.ToString());
                    sqlCommand.Parameters.AddWithValue("@QusitionTitle", qusition.QusitionTitle);
                    sqlCommand.Parameters.AddWithValue("@QusitionContent", qusition.QusitionContent);
                    sqlCommand.Parameters.AddWithValue("@QLabel0", qusition.Qlabel0);
                    sqlCommand.Parameters.AddWithValue("@QLabel1", qusition.Qlabel1);
                    sqlCommand.Parameters.AddWithValue("@QLabel2", qusition.Qlabel2);
                    sqlCommand.Parameters.AddWithValue("@Userid", qusition.Askerid);
                    int rows = sqlCommand.ExecuteNonQuery();
                    PostQ = "update LabelTable set LabelQnum=LabelQnum+1 where QLabel0=@Qlabel0";
                    sqlTransaction.Commit();
                    return(true);
                }
                catch (SqlException)
                {
                    sqlTransaction.Rollback();
                    return(false);
                }
                finally
                {
                    sqlConnection.Close();
                }
            }
        }
コード例 #7
0
        /// <summary>
        /// 得到一个人的提问所有问题
        /// </summary>
        /// <param name="Userid"></param>
        /// <returns></returns>
        public string GetUserallQusition(int Userid)
        {
            SqlConnection sqlConnection = new SqlConnection(connectionstring);

            sqlConnection.Open();
            try
            {
                string sql = "select Qusitonid,Askerid,AskTime,UpAskTime,QusitonTitle" +
                             ",QusitonContent,Answerednum,Followednum,QLabel0,QLabel1,QLabel2 " +
                             "from QusitonTable where Askerid= @Userid order by AskTime DESC";
                SqlCommand sqlCommand = sqlConnection.CreateCommand();
                sqlCommand.CommandText = sql;
                sqlCommand.Parameters.AddWithValue("@Userid", Userid);
                SqlDataAdapter sqlDataAdapter = new SqlDataAdapter();
                sqlDataAdapter.SelectCommand = sqlCommand;
                DataTable dataTable = new DataTable();
                sqlDataAdapter.Fill(dataTable);
                List <Qusition> qusitions = new List <Qusition>();
                Qusition        qusition;
                foreach (DataRow item in dataTable.Rows)
                {
                    qusition = new Qusition();
                    qusition = GetQusitionRow(item);
                    qusitions.Add(qusition);
                }
                return(JsonConvert.SerializeObject(qusitions));
            }
            catch (SqlException)
            {
                return(string.Empty);
            }
            finally
            {
                sqlConnection.Close();
            }
        }
コード例 #8
0
        private void Searchlist_ItemClick(object sender, ItemClickEventArgs e)
        {
            Qusition qusition = (Qusition)e.ClickedItem;

            Frame.Navigate(typeof(AnswerQusition), qusition);
        }
コード例 #9
0
        public bool PutUpdateQ([FromBody] Qusition qusition)
        {
            QusitionAccess qusitionaccess = new QusitionAccess();

            return(qusitionaccess.PutFixQ(qusition));
        }
コード例 #10
0
        public bool PostQusi([FromBody] Qusition qusition)
        {
            QusitionAccess qusitionAccess = new QusitionAccess();

            return(qusitionAccess.PostnewQusition(qusition));
        }