相关疑难解决方法(0)

将null分配给SqlParameter

以下代码给出了一个错误 - "没有从DBnull到int的隐式转换".

SqlParameter[] parameters = new SqlParameter[1];    
SqlParameter planIndexParameter = new SqlParameter("@AgeIndex", SqlDbType.Int);
planIndexParameter.Value = (AgeItem.AgeIndex== null) ? DBNull.Value : AgeItem.AgeIndex;
parameters[0] = planIndexParameter;
Run Code Online (Sandbox Code Playgroud)

c# dbnull sqlparameter

177
推荐指数
6
解决办法
26万
查看次数

声明中的问号和冒号意味着什么?这是什么意思?

那是什么?和冒号意味着什么

 ((OperationURL[1] == "GET") ? GetRequestSignature() : "")
Run Code Online (Sandbox Code Playgroud)

在以下声明中......

string requestUri = _apiURL + "?e=" + OperationURL[0] + ((OperationURL[1] == "GET") ? GetRequestSignature() : "");
Run Code Online (Sandbox Code Playgroud)

c# asp.net web-services

63
推荐指数
3
解决办法
10万
查看次数

处理DBNull的最佳方法是什么?

我经常遇到处理DataRows退回的问题SqlDataAdapters.当我尝试使用如下代码填充对象时:

DataRow row = ds.Tables[0].Rows[0];
string value = (string)row;
Run Code Online (Sandbox Code Playgroud)

DBNull's在这种情况下处理这种情况的最佳方法是什么.

.net c# sql-server

42
推荐指数
5
解决办法
6万
查看次数

在C#中,为什么不能将条件运算符隐式地转换为可空类型

我很好奇为什么隐式演员会失败...

int? someValue = SomeCondition ? ResultOfSomeCalc() : null;
Run Code Online (Sandbox Code Playgroud)

为什么我必须执行显式演员

int? someValue = SomeCondition ? ResultofSomeCalc() : (int?)null;
Run Code Online (Sandbox Code Playgroud)

在我看来,编译器具有进行隐式转换决策所需的所有信息,不是吗?

c# nullable conditional-operator

30
推荐指数
3
解决办法
1万
查看次数

寻找有关差异问题的解释

......毕竟,这可能实际上不是一个方差问题.当我编译我的代码时,Visual Studio会给我以下错误:

无法确定条件表达式的类型,因为'ClassA'和'ClassB'之间没有隐式转换

我在这里读到了这个错误,并且确实听起来像是不可能将抽象类用作接口之类的契约,我可以使用派生类代替它们的基类.为了简化操作,我编写了一些模拟我实际代码关系的测试类.请考虑以下事项:

using System;
using System.Collections.Generic;
using System.Linq;
using System.Text;
using System.Threading.Tasks;

namespace AbstractClassImplicitConversion {
    class Program {
        static void Main(string[] args) {
            StartClass temp = new StartClass();
        }
    }

    public class StartClass
    {
        public AbstractClass _ac { get; private set; }

        public StartClass()
        {
            bool which = true;
            // this block will compile
            /*
            if( which)
                _ac = new DerivedClass1();
            else 
                _ac = new DerivedClass2();
             */
            // this block will not compile
            _ac = which ? new …
Run Code Online (Sandbox Code Playgroud)

c# covariance variance

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

将if语句用于DateTime时出现语法错误?变量

尝试编译此代码时出现语法错误,我不太清楚为什么.任何人都可以帮我修复这段代码吗?

DateTime? ModifiedDate = null;

ModifiedDate = (dbReader["ModifiedDate"] == DBNull.Value ? null : DateTime.Parse(dbReader['ModifiedDate'].ToString()));
Run Code Online (Sandbox Code Playgroud)

.net c# asp.net visual-studio

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