小编suj*_*lil的帖子

C#位置0没有行

我再次收到错误,说明没有与SQL查询匹配的行.

它指出:

位置0没有行.

要点:

 firstnameTxt.Text = dt.Rows[0].ItemArray[1].ToString();
Run Code Online (Sandbox Code Playgroud)

以下是我的C#代码.

    protected void Page_Load(object sender, EventArgs e)
    {
        if (Session["New"] != null)
        {
            redPnl.Visible = false;
            UserNameSess.Text += Session["New"].ToString();

            SqlConnection con = new SqlConnection(@"Data Source=(LocalDB)\v11.0; AttachDbFilename=C:\Users\Donald\Documents\Visual Studio 2013\Projects\DesktopApplication\DesktopApplication\Student_CB.mdf ;Integrated Security=True");
            con.Open();

            SqlDataAdapter sda = new SqlDataAdapter("Select Student_Username, Student_FName, Student_SName, Student_Email FROM Student Where Student_Username=@StuUsername", con);
            sda.SelectCommand.Parameters.Add("@StuUsername", SqlDbType.VarChar).Value = UserNameSess.Text;
            DataTable dt = new DataTable();
            sda.Fill(dt);
            if (dt.Rows.Count > 0)

            usernameTxt.Text = dt.Rows[0].ItemArray[0].ToString();
            firstnameTxt.Text = dt.Rows[0].ItemArray[1].ToString();
            surnameTxt.Text = dt.Rows[0].ItemArray[2].ToString();
            emailTxt.Text = dt.Rows[0].ItemArray[3].ToString();
            dt.Clear();

        } …
Run Code Online (Sandbox Code Playgroud)

.net c# sql

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

LINQ with conditional where子句

我有这个LINQ:

    private static IQueryable<Contract> getValidContracts(DbContext context, DateTime date,int clientId)
    {
        return (from contract in context.Set<Contract>()
                where contract.ValidityDate >= date
                where contract.ClientId == clientId
                select contract);
    }
Run Code Online (Sandbox Code Playgroud)

在LINQ我给了这一行:

 where contract.ClientId == clientId
Run Code Online (Sandbox Code Playgroud)

我希望只有当clientId变量不等于零时,此行才会包含在where子句中.

任何想法我怎么能优雅呢?

c# linq

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

使用多个 if 语句还是后面有很多 else if 语句更有效?

作为一个例子,在开始时有很多ifs 和很多else if在一个之后if。我在下面添加了一些伪代码。

if (x=1)
  print x;
if (x=2)
  print x;
if (x=3)
  print x;
Run Code Online (Sandbox Code Playgroud)

或者

if (x=1)
  print x;
else if (x=2)
  print x;
else if (x=3)
  print x;
Run Code Online (Sandbox Code Playgroud)

c# optimization

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

C#中的Nullable DateTime

我有两个与DateTime分配相关的问题

DateTime? y = 1 == 1 ? null: DateTime.MaxValue;
DateTime? y = null; // assignment works as expected
Run Code Online (Sandbox Code Playgroud)
  • 为什么第一个赋值在null和之间发生类型转换错误DateTime?
  • 哪个是DateTime?c#中空赋值的首选方法.

    DateTime? x = default(DateTime?); //prints null on console
    
    DateTime? x = null;               // prints null on console
    
    DateTime? x = DateTime.MinValue;  //print 01/01/0001 
    
    Run Code Online (Sandbox Code Playgroud)

.net c# datetime nullable variable-assignment

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

获取所选列表框项的对象信息

我的列表框中有对象包含BankAccount类的实例(Balance,transfer,Withdraw方法)和Wallet类(name,birthday等)
我需要查看有关所选列表框对象的某些信息部分(如balance) (lbAccounts).

列表框中的对象:

DateTime birth = Convert.ToDateTime("01/01/1970");

Wallet account = new Wallet("Bob", "Smith", birth);
BankAccount account1 = new BankAccount(account);
account1.DepositFunds(5000);
BankAccount account2 = new BankAccount(account);
account2.DepositFunds(300);

//Adding accounts to listbox
lbAccounts.Items.Add(account1);
lbAccounts.Items.Add(account2);
Run Code Online (Sandbox Code Playgroud)

问题: 如何获得所选列表框对象的余额?

c# visual-studio-2015

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

字符串未被识别为有效的DateTime

我有一个字符串2016.我想知道如何将此字符串解析为日期时间?我试过,Datetime.ParseExact但它说这不是一个有效的格式

string period = "2016"
DateTime date = DateTime.ParseExact(period, "YYYY", CultureInfo.InvariantCulture);
Run Code Online (Sandbox Code Playgroud)

帮助将不胜感激.谢谢

.net c# string

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

将一行2D数组发送到c#中的函数

我是C#的新手,并试图学习如何将2D数组的各行发送到函数.我有一个3行2列的二维数组.如果我想将第三行发送到一个被调用的函数calculate,请告诉我如何执行此操作.

namespace test
{
    class Program
    {
        static void Main(string[] args)
        {
            string[,] array2Db = new string[3, 2] { { "one", "two" }, { "three", "four" }, { "five", "six" } };
            calculate(array2Db[2,0]); //I want to send only the 3rd row to this array
            //This array may contain millions of words. Therefore, I can't pass each array value individually
        }

        void calculate(string[] words)
        {
            for (int i = 0; i < 2; i++)
            {
                Console.WriteLine(words);
            }
        }
    } …
Run Code Online (Sandbox Code Playgroud)

c# arrays

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

IGrouping不包含以下定义

我一直在这里查看其他线程,以了解如何在linq中执行GroupBy。我正在使用对其他人有用的EXACT语法,但是,它不起作用。

这是查询:

var results = from p in pending
              group p by p.ContactID into g
              let amount = g.Sum(s => s.Amount)
              select new PaymentItemModel
              {
                  ContactID = g.ContactID, // <--- Error here
                  Amount = amount
              };
Run Code Online (Sandbox Code Playgroud)

pending是一个List<T>包含其他列ContactID和的列,Amount但这是我对此查询仅关心的两列。

问题是,在的内部select newg.不会给我原始列表内的任何列pending。当我尝试时,我得到:

IGrouping <int, LeadPurchases>不包含ContactID的定义,也没有扩展方法等等……

这是我要模拟的SQL:

SELECT 
    lp.PurchasedFromContactID, 
    SUM (lp.Amount) 
FROM 
    LeadPurchases lp
GROUP BY 
    lp.PurchasedFromContactID
Run Code Online (Sandbox Code Playgroud)

c# linq

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

如何在每个角色上插入Dot

当用户输入名称像美国时,它应该更改为美国,我该怎么写

str hell0 = "USA"
Run Code Online (Sandbox Code Playgroud)

它应该保存在数据库中 U.S.A

c# string

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

如何从C#中的DateTime中删除空格?

我正在开发一个xamarin表单应用程序,我将当前日期时间指定为图像的文件名.目前图像保存为"7202017 53150 PM.jpg".我希望它像这样保存"720201753150PM.jpg".如何删除日期和时间之间的空格?

我尝试过如下,但它没有用.

string _imagename = DateTime.Now.ToString();
_imagename.Replace(" ", string.Empty);
Run Code Online (Sandbox Code Playgroud)

c#

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