P
Paul Custance
I am am trying to register my DLL in the COM+ Catalog. To do this I am
taking the manual approach and using the regsvcs.exe tool provided with the
..net framework 2005. I have strong signed the assemblies using Visual Studio
2005.
However when I regiser the dll it comes back that I have derived classes
found in the assembly and won't register, saying that classes must be
public, concrete and have a default constructor. Why is this happening? As
far as I'm aware I haven't got any derived classes apart from the serviced
component which is required. Below is my code for my class:
using System;
using System.Data;
using System.Data.SqlClient;
using System.EnterpriseServices;
namespace StepByStep7_1
{
public class NorthwindSC : ServicedComponent
{
private SqlConnection sqlcnn;
private SqlDataAdapter sqlda;
private DataSet ds;
public NorthwindSC()
{
// Create a connection to the
// Northwind SQL Server database
sqlcnn = new SqlConnection("data source=(local);initial
catalog=Northwind User ID = SAassword = *********");
}
// This method executes a SELECT query and
// returns the results in a DataSet object
public DataSet ExecuteQuery(string strQuery)
{
// Create a SqlDataAdapter object to talk to the database
sqlda = new SqlDataAdapter(strQuery, sqlcnn);
// Create a DataSet object to hold the results
ds = new DataSet();
// Fill the DataSet object
sqlda.Fill(ds, "Results");
return ds;
}
// This method updates the database with the changes in a DataSet
object
public int UpdateData(DataSet ds)
{
// Update the database and return the result
SqlCommandBuilder sqlcb = new SqlCommandBuilder(sqlda);
return sqlda.Update(ds.Tables["Results"]);
}
}
}
Many thanks for your help in advance
Paul
taking the manual approach and using the regsvcs.exe tool provided with the
..net framework 2005. I have strong signed the assemblies using Visual Studio
2005.
However when I regiser the dll it comes back that I have derived classes
found in the assembly and won't register, saying that classes must be
public, concrete and have a default constructor. Why is this happening? As
far as I'm aware I haven't got any derived classes apart from the serviced
component which is required. Below is my code for my class:
using System;
using System.Data;
using System.Data.SqlClient;
using System.EnterpriseServices;
namespace StepByStep7_1
{
public class NorthwindSC : ServicedComponent
{
private SqlConnection sqlcnn;
private SqlDataAdapter sqlda;
private DataSet ds;
public NorthwindSC()
{
// Create a connection to the
// Northwind SQL Server database
sqlcnn = new SqlConnection("data source=(local);initial
catalog=Northwind User ID = SAassword = *********");
}
// This method executes a SELECT query and
// returns the results in a DataSet object
public DataSet ExecuteQuery(string strQuery)
{
// Create a SqlDataAdapter object to talk to the database
sqlda = new SqlDataAdapter(strQuery, sqlcnn);
// Create a DataSet object to hold the results
ds = new DataSet();
// Fill the DataSet object
sqlda.Fill(ds, "Results");
return ds;
}
// This method updates the database with the changes in a DataSet
object
public int UpdateData(DataSet ds)
{
// Update the database and return the result
SqlCommandBuilder sqlcb = new SqlCommandBuilder(sqlda);
return sqlda.Update(ds.Tables["Results"]);
}
}
}
Many thanks for your help in advance
Paul