小编Sal*_*ari的帖子

创建字符串表达式时出现意外标记?

我有以下代码:

public void UpdateCardSetColumn(CARD cardColumn, bool value, string cardId)
{
    string strValue = value ? "1" : "0";

    sql = $"UPDATE Card SET {cardColumn.Text()} = {strValue}? WHERE CardGuid = '{?cardId}?'";

    RunExecute(db2, sql);
}
Run Code Online (Sandbox Code Playgroud)

这里有一个错误 '{cardId

它告诉我

无效的表达术语“

.net c# sql ado.net

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

如何在c#程序中删除事件处理程序代码

当我尝试删除那些空处理程序时,表单会被破坏.如何在不影响表单的情况下从程序中删除那些恼人的代码?

在此输入图像描述

.net c# winforms

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

将对象列表转换为字符串列表

写下面的内容有什么更好的方法?我可以使用Lambda表达式吗?

List<string> managerList = new List<string>();
foreach (Manager m in matchedManager)
{
    managerList.Add(m.FullName);
}
Run Code Online (Sandbox Code Playgroud)

c# linq asp.net-mvc lambda

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

如何比较两个列表并更改一个属性

我有一堂课:

public class Doc
{
   public int Id {get; set;}
   public string Name {get; set;}
   public bool IsActive {get; set;}
}
Run Code Online (Sandbox Code Playgroud)

和两个列表Doc类型。

IsActive如果包含第二个列表的ID,如何编写LINQ来比较这些列表并更改第一个列表的属性。

c# linq

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

使用 SQL 命令从 C# 中的数据库中检索信息

我目前正在尝试在 C# 中创建一个图书管理器。我正在使用.ACCDB数据库来存储有关书籍的数据。

首先,我检索bookIDs属于特定系列的 :

sql.CommandText = "select * from BookTable where SeriesID = " +
DataClass.SeriesTableIndex;
Run Code Online (Sandbox Code Playgroud)

它检索BookIDs 2023。这些是正确BookIDs对应SeriesID于数据库中的。

在此之后,我的代码构建下一个 sql 命令。我省略了命令的功能构建。它构建以下代码:

string sqlcommand = "select * from BookTable where BookID = 23 or 20"
Run Code Online (Sandbox Code Playgroud)

我使用这个命令来获取书名:

sql.CommandText = sqlcommand;
Run Code Online (Sandbox Code Playgroud)

它应该只返回bookWithID23bookWithID20但它也返回bookWithID21。我的测试数据库中只有 3 本书,但它以某种方式返回了所有 3 本书,而不是系列中的 2 本书。

我对 SQL 一无所知,所以这可能是一个简单的语法错误。

.net c# sql ms-access

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

Thread.Sleep为什么不在示例中阻塞线程

Thread.Sleep()将主线程置于保持一定的毫秒数.我希望Thread.Sleep()阻止主线程,即使它是从不同的线程调用(Task.Run()事实上创建新的线程),为什么当PleaseWait()我的循环在主线程上仍然执行,因为Thread.Sleep被调用?它应该暂停给我.或者是因为事实上,Thread.Sleep()通过Task.Run调用不同的线程现在不完全Thread.Sleep适用于主线程,但它指的是创建的新线程Task.Run.意味着主线程不是睡眠,而是Task.Run侧面创建的线程?希望很清楚.

class Program
    {
        static void Main(string[] args)
        {
            Task.Run(() => PleaseWait());

            var n = 0;
            while (n < 10000)
            {
                Console.WriteLine(n);
                n++;
            }

            Console.ReadLine();
        }


        public static void PleaseWait()
        {
            Thread.Sleep(10000);
            Console.WriteLine("After sleep");
        }
    }
Run Code Online (Sandbox Code Playgroud)

c# multithreading

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

具有字符串列表的 JSON DeserializeObject

[
  {
        "Title": "TOY STORY 4",
        "Genre": "COMEDY",
        "Actors": [
            "Tom Hanks",
            "Tim Allen",
            "Annie Potts"
        ],
        "Id": 1
    },
    {
        "Title": "The Matrix",
        "Genre": "Action",
        "Actors": [
            "Keanu Reeves",
            "Laurence Fishburne",
            "Carrie-Anne Moss"
        ],
        "Id": 2
    }
]
Run Code Online (Sandbox Code Playgroud)

我有一个想要转换 C# 对象的 JSON 字符串:

public class Movies1
{
    public string Title { get; set; }
    public string Genre{ get; set; }
    public List<Actor> Actors { get; set; }
    public int id { get; set; }
}

public class Actor
{ …
Run Code Online (Sandbox Code Playgroud)

.net c# json.net

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

查看2个逗号分隔字符串之间是否有任何值匹配

返回bool的最佳方法是什么,表示两个逗号分隔的字符串之间是否有任何值匹配?例如:

"1,2,3,4"和"2,5,6,7"返回true,因为两个字符串都有元素2

EX2:

"1,2,3,4"和"5,6,7,8"返回false,因为没有共同的元素

.net c# linq asp.net

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

禁用代码后面的所有控件

超级简单的问题,在WPF之前非常容易做到,现在我找不到简单的方法。

我正在寻找类似的东西:

foreach(var control in this.FrameworkElements)
{
    control.IsEnabled = false;
}
Run Code Online (Sandbox Code Playgroud)

.net c# wpf

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

异步 Lambda 函数&lt;字符串&gt;

我是 async/await 的初学者,我的代码出现错误,我无法弄清楚如何修复它:

public static Func<string> GetTheID;

void Main()
{
    GetTheID = async () => await GetMyId(); //Error here!

    Console.WriteLine(GetTheID);
}

public async Task<string> GetMyId()
{
    return await Task.Run(() =>
    {
        return "AAABBBB";
    });
}
Run Code Online (Sandbox Code Playgroud)

我收到此错误:

无法将异步 lambda 表达式转换为委托类型 'Func<string>'。异步 lambda 表达式可能返回void,TaskTask<T>, 其中没有一个可以转换为'Func<string>'

您能否帮助我如何在不更改委托签名的情况下修复此错误GetTheID(我的意思是不将其签名更改为Func<Task<string>>)?

.net c# async-await

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