小编Sal*_*ari的帖子

无法将参数值从文本框转换为字符串

这是我的buttonsubmit_click活动代码.始终显示错误.我不知道错误来自哪里.有时错误是:

对象必须实现IConvertible.

da.InsertCommand.Parameters.Add("@ApplicantUsername", SqlDbType.VarChar).Value = txtUsername.Text;
da.InsertCommand.Parameters.Add("@Branch", SqlDbType.VarChar).Value = ddlNear.SelectedValue;
da.InsertCommand.Parameters.Add("@NoALastName", SqlDbType.VarChar).Value = txtLname.Text;
da.InsertCommand.Parameters.Add("@NoAFirstName", SqlDbType.VarChar).Value = txtFname.Text;
da.InsertCommand.Parameters.Add("@NoAMiddleName", SqlDbType.VarChar).Value = txtMname;
da.InsertCommand.Parameters.Add("@NoACivilStatus", SqlDbType.VarChar).Value = ddlCivil.SelectedValue;
da.InsertCommand.Parameters.Add("@NoAMonth", SqlDbType.VarChar).Value = ddlMonth.SelectedValue;
da.InsertCommand.Parameters.Add("@NoADay", SqlDbType.VarChar).Value = ddlDay.SelectedValue;
da.InsertCommand.Parameters.Add("@NoAYear", SqlDbType.VarChar).Value = ddlYear.SelectedValue;
da.InsertCommand.Parameters.Add("@NoAAge", SqlDbType.VarChar).Value = txtAge.Text;
da.InsertCommand.Parameters.Add("@NoSLastName", SqlDbType.VarChar).Value = txtSlname.Text;
da.InsertCommand.Parameters.Add("@NoSFirstName", SqlDbType.VarChar).Value = txtSfname.Text;
da.InsertCommand.Parameters.Add("@NoSMiddleName", SqlDbType.VarChar).Value = txtSmname.Text;
da.InsertCommand.Parameters.Add("@Residence", SqlDbType.VarChar).Value = txtPerm.Text;
da.InsertCommand.Parameters.Add("@TelephoneNumber", SqlDbType.VarChar).Value = txtNum.Text;
da.InsertCommand.Parameters.Add("@ResidenceYearsThere", SqlDbType.VarChar).Value = txtPstay.Text;
da.InsertCommand.Parameters.Add("@DescriptionOfHouse", SqlDbType.VarChar).Value = txtDescHouse.Text;
{
     if (cbOwn.Checked)
     {
         da.InsertCommand.Parameters.AddWithValue("@DescriptionOfHouseType", "Owned");
     }
     else …
Run Code Online (Sandbox Code Playgroud)

c# database sql-server asp.net visual-studio-2010

0
推荐指数
1
解决办法
955
查看次数

foreach 类列表中的项目

我有一个这样的课程:

public class OverDueClass
{
     public int CustomerID { get; set; }
     public int Question_ID { get; set; }
     public string Department { get; set; }
     public DateTime DueDate { get; set; }
}
Run Code Online (Sandbox Code Playgroud)

我正在填充这个类并将它传递给另一个方法:

while (dataReader.Read())
{
      OverDueClass overDueItem = new OverDueClass();

      overDueItem.CustomerID = (int)dataReader[0];
      overDueItem.Question_ID = (int)dataReader[1];
      overDueItem.Department = dataReader[2].ToString();
      overDueItem.DueDate = (DateTime)dataReader[3];

      OverDueCell.Add(overDueItem);
}  

sendEmail("fake@email.com", OverDueCell);
Run Code Online (Sandbox Code Playgroud)

现在在另一种方法中,我可以看到正在传递数据。

现在我正在尝试运行 aforeach来处理数据,我尝试了以下操作:

foreach(string item in overDue)
{

}
Run Code Online (Sandbox Code Playgroud)

但我收到此错误:

无法将类型转换为字符串。

c# asp.net foreach

0
推荐指数
1
解决办法
2万
查看次数

从数据库返回字符串值

我想获得PatientFirstname从数据库中,但什么我得到当我运行这段代码仅仅是一个LINQ表达式字符串,而不是.

public static string GetPatientName(int bedNumber)
{
        var name = "";

        using (var data = new HospitalDBDataContext())
        {
             if (data.Connection.State == ConnectionState.Closed) 
               data.Connection.Open();

             name = data.Patients.Where(x => x.BedNumber.Equals(bedNumber))
                                 .Select(x => x.Firstname).ToString();

            if (data.Connection.State == ConnectionState.Open) 
               data.Connection.Close();

            data.Dispose();
        }

        return name;
}
Run Code Online (Sandbox Code Playgroud)

使这个表达式返回我需要的实际值的方法是什么?

c# linq linq-to-sql

0
推荐指数
1
解决办法
88
查看次数

从异步方法转换错误返回布尔值

我有一个Async返回Boolean值的方法但是当我调用该函数并尝试获取值时bool,我得到一个错误:

不能隐式地将类型'system.threading.tasks.task bool'转换为'bool'.

以下是我调用async方法的方法:

bool IsAvailable = Helper.search(Name);
Run Code Online (Sandbox Code Playgroud)

怎么纠正呢?

.net c# asynchronous boolean

0
推荐指数
1
解决办法
953
查看次数

使用Interlocked的意外结果

我有这个代码

int j = -1;
Parallel.For(0, 100, i =>
{
    Console.Write("i= " +i);
    Interlocked.Increment(ref j);
    Console.Write(" j= " + j);
    Console.WriteLine();
});
Run Code Online (Sandbox Code Playgroud)

在运行之后,我希望以i某种方式随机显示值,而不是按升序排列,但是对于j变量的值,我希望它们始终按升序排列.

所以现在我在某个时候有这个输出:

在此输入图像描述

所以有一个j= 78值之间9394,这是正确的?难道一些请你解释我为什么在这里,而不是之间有这样的价值7779,这是因为Console.Write方法不是线程安全的?

j给出的变量值(正如我所期望的那样)是否按升序排列,输出j = 78只是Console.Write方法的一个小故障,因为它不是线程安全的?

.net c# multithreading

0
推荐指数
1
解决办法
59
查看次数

拆分两个符号之间的字符串

我有字符串:

string myString = "^25121261064300000000000387?;XXXXXXXXXXXXXXXX=25121261064338700000?";
Run Code Online (Sandbox Code Playgroud)

我需要拆分字符串,仅保留链的符号中;=.

预期的结果是 XXXXXXXXXXXXXXXX

知道如何分开2个符号吗?

c# string split

0
推荐指数
1
解决办法
156
查看次数

List <T> .Add不添加到列表中

好吧问题是我对列表的计数没有上升所以它没有将对象添加到列表中.

List<Employee> employees = new List<Employee>();

private void addEmployee_Click(object sender, EventArgs e)
{
    List<Employee> employees = new List<Employee>();

    employees.Add(new Employee()
    {
        egn = egnInput.Text,
        names = namesInput.Text,
        proffesion = professionList.Text,
        office = officeList.Text,
        salary = Double.Parse(salaryInput.Text),
        joinDate = DateTime.Parse(joinDatePicker.Text)
    });

    MessageBox.Show("????????? ?? ??????? ???????!");

    egnInput.Clear();
    namesInput.Clear();
    professionList.Text = "";
    officeList.Text = "";
    salaryInput.Clear();
    joinDatePicker.Text = "";

}
Run Code Online (Sandbox Code Playgroud)

提前致谢!

c# winforms

0
推荐指数
1
解决办法
107
查看次数

如何将一行数据从控制器传递到视图,而不是IEnumerable <>

我想从控制器发送数据到视图

EMP e =(EMP) db.EMPs.Where(n => n.id == j);
return View(e);
Run Code Online (Sandbox Code Playgroud)

EMPModel对象.错误是

无法转换System.Data.Entity.Infrastructure.DbQuery`1 [WebApplication1.Models.EMP]类型的对象以键入WebApplication1.Models.EMP

注意:我不能用 IEnumerable<Model>

c# linq asp.net-mvc entity-framework

0
推荐指数
1
解决办法
156
查看次数

使用order by在C#中连接SQL

我有这个代码,我想写,ORDER BY DESC但我不知道怎么可以请一些人请帮忙

OleDbCommand cmd = new OleDbCommand("SELECT * FROM users WHERE [id] = " + Session_ID, conn2);
Run Code Online (Sandbox Code Playgroud)

c# ms-access oledbcommand

0
推荐指数
1
解决办法
275
查看次数

随机打乱数组

我需要做的是随机打乱 25 个数字的数组

int[] arr = Enumerable.Range(0, 24).ToArray();
Run Code Online (Sandbox Code Playgroud)

这样它仍然具有从 0 到 24 的所有数字,但顺序是随机的。最简单的方法是什么?

@编辑;

namespace WindowsFormsApp1
{
    public partial class Form1 : Form
    {
        Random rnd = new Random();
        int[] arr = Enumerable.Range(0, 24).OrderBy(c => rnd.Next()).ToArray();

        public Form1()
        {
            InitializeComponent();
        }
    }
}
Run Code Online (Sandbox Code Playgroud)

c# arrays random visual-studio

0
推荐指数
1
解决办法
8419
查看次数