无法将类型System.data.datatable隐式转换为System.data.dataset? [英] cannot implicit convert type System.data.datatable to System.data.dataset?

查看:104
本文介绍了无法将类型System.data.datatable隐式转换为System.data.dataset?的处理方法,对大家解决问题具有一定的参考价值,需要的朋友们下面随着小编来一起学习吧!

问题描述

遇到这种错误.无法隐式转换类型.任何人都可以建议我如何解决此问题.

hi m getting this type of error..cannot implicity converty type..can any one suggest me how to solve this.??

public DataSet GetTender1(int ID)
        {
            TenderTypeDAL tenderDAL = new TenderTypeDAL();
            DataSet dataTable = new DataSet();
//this linve m getting error...
            dataTable = tenderDAL.GetTender1(ID);

            return dataTable;
        }


谢谢

推荐答案

这取决于tenderDAL.GetTender1返回的内容:如果它是object这是一个DataSet,那就没有问题:只需将其强制转换即可在那里检查:
It depends on what tenderDAL.GetTender1 returns: If it is an object which is a DataSet then it is no problem: just cast it, preferably with a check in there:
dataTable = (DataSet) tenderDAL.GetTender1(ID);




or

dataTable = tenderDAL.GetTender1(ID) as DataSet;
if (dataTable != null)
   {
   ...
   }


如果不是,那么您需要查看返回的内容,看看它们之间是否有良好的转换.


If it doesn''t, then you need to look at what it does return, and see if there is a good cast between them.


public DataSet GetTender1(int ID)
{
            DataSet dt = new DataSet();
            SqlConnection con = new SqlConnection(varConnectionString);
            SqlCommand cmd = new SqlCommand();
            cmd.Connection = con;
            cmd.CommandType = CommandType.StoredProcedure;
            cmd.CommandText = "usp_GetTenderByID";

            cmd.Parameters.Add(new SqlParameter("@Id", ID));
            SqlDataAdapter adapter = new SqlDataAdapter(cmd);

            try
            {
                adapter.Fill(dt);
            }
            catch
            {
                dt = null;
            }
            return dt;
}



现在调用以下方法



now call the following method

public DataSet GetTender1(int ID)
{
            TenderTypeDAL tenderDAL = new TenderTypeDAL();
            DataSet ds= new DataSet();
            ds= tenderDAL.GetTender1(ID);
 
            return ds;
}



请解决此错误,将其标记为答案...



please, mark this as answer if it resolves the error...


Hello

Please define dataset and datatable this way

<pre lang="c#">
 private DataSet GetDataSet()
    {
        DataSet companydata = new DataSet("CompanyList");

        DataTable company = companydata.Tables.Add("company");

        company.Columns.Add("Id", typeof(Guid));


</pre>


这篇关于无法将类型System.data.datatable隐式转换为System.data.dataset?的文章就介绍到这了,希望我们推荐的答案对大家有所帮助,也希望大家多多支持IT屋!

查看全文
相关文章
登录 关闭
扫码关注1秒登录
发送“验证码”获取 | 15天全站免登陆