Warning: file_get_contents(/data/phpspider/zhask/data//catemap/6/mongodb/12.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
C# 如何强制转换传递到方法中的变量?_C# - Fatal编程技术网

C# 如何强制转换传递到方法中的变量?

C# 如何强制转换传递到方法中的变量?,c#,C#,我多次重复此代码: if (db2.Query<int>("SELECT 1 FROM CARDCHOICE WHERE CC = ?", (int)CC.JFBP1).Count == 0) { var temp10 = Enumerable.Range(0, 10).Select(i => new CardChoice { Cc = (int)CC.JFBP1, Number = i }); db2.InsertAll(temp10); } 这里是方法 pri

我多次重复此代码:

if (db2.Query<int>("SELECT 1 FROM CARDCHOICE WHERE CC = ?", (int)CC.JFBP1).Count == 0)
{
   var temp10 = Enumerable.Range(0, 10).Select(i => new CardChoice { Cc = (int)CC.JFBP1, Number = i });
   db2.InsertAll(temp10);
}
这里是方法

private static void InsertCC(CC cc, int qty )
{
    var choice = int(cc);
    if (db2.Query<int>("SELECT 1 FROM CARDCHOICE WHERE CC = ?", choice).Count == 0)
    {
        var temp = Enumerable.Range(0, qty).Select(i => new CardChoice { Cc = choice, Number = i });
        db2.InsertAll(temp);
    }
}
然而,它告诉我不能用int在方法中强制转换cc,并给我错误表达式术语int

有人能给我一些建议,我如何才能投下传来的cc吗?我意识到我可以在方法调用中进行转换,但我不希望这样做,因为我有很多这样的调用。

此代码不是cast var choice=intcc

使用var-choice=intcc

但是在方法中不使用cc参数,所以只需传递int


JFBP1?如果您传递的是CC类型,那么您可以像insertccc一样传递它,10;然后在函数中调用CC.JFBP1。或者,您可以调用insertccc.JFBP1,10;将第一个参数改为int而不是CC.db2.Query?这是什么?Dapper?我认为InsertCC也应该返回操作结果。这样你就知道插入是完成了还是跳过了。谢谢,那是我的一个愚蠢的错误。我看了一段时间没有发现。将在9分钟内接受答案。@Alan2如果您不知道如何使用cast,请在google上搜索,将有大量可用信息。这应该需要几秒钟,而不是一段时间
private static void InsertCC(CC cc, int qty )
{
    var choice = int(cc);
    if (db2.Query<int>("SELECT 1 FROM CARDCHOICE WHERE CC = ?", choice).Count == 0)
    {
        var temp = Enumerable.Range(0, qty).Select(i => new CardChoice { Cc = choice, Number = i });
        db2.InsertAll(temp);
    }
}
private static void InsertCC(int choice, int qty )
{
    if (db2.Query<int>("SELECT 1 FROM CARDCHOICE WHERE CC = ?", choice).Count == 0)
    {
        var temp = Enumerable.Range(0, qty).Select(i => new CardChoice { Cc = choice, Number = i });
        db2.InsertAll(temp);
    }
}
InsertCC(CC.JFBP1, 10);