VinnarenMedlem sedan sep. 2005858 inlägg
Hej
Har problem med att få in data i databasen. Jag skickar in det till en lagrad procedur, men får felmeddelandet:
Procedure or Function 'CreateBlogg' expects parameter '@bloggName, which was not supplied.
tar jag bort den raden får jag samma felmeddelande på @security.
Har koden:
con.Open();
SqlCommand cmd = new SqlCommand("dbo.CreateBlogg", con);
cmd.CommandType = CommandType.StoredProcedure;
cmd.Parameters.Add("@bloggName", SqlDbType.VarChar, 50).Value = create.BloggName;
cmd.Parameters.Add("@bloggType", SqlDbType.Int, 4).Value = create.BloggType;
cmd.Parameters.Add("@security", SqlDbType.UniqueIdentifier).Value = create.Security;
cmd.Parameters.Add("@phone", SqlDbType.VarChar, 16).Value = create.Phone;
cmd.Parameters.Add("@theme", SqlDbType.Int, 4).Value = create.Theme;
cmd.ExecuteNonQuery();
Proceduren har följande inparametrar:
(
@bloggName VarChar(50),
@name VarChar(70) = null,
@bloggType int,
@security UniqueIdentifier,
@phone VarChar(16) = null,
@theme Int
)
Hur kan man lösa detta??
Tacksam för all hjälp :stud
CatZMedlem sedan jan. 20022 341 inlägg
vad gör
@name VarChar(70) = null
på asp.net sidan heter den ju
bloggType
VinnarenMedlem sedan sep. 2005858 inlägg
oki, tog bort @name VarChar(70) = null
men får felmeddelandet:
Ett fel inträffade när bloggen skulle skapas:
System.Data.SqlClient.SqlException: Procedure or Function 'CreateBlogg' expects parameter '@bloggName', which was not supplied. vid System.Data.SqlClient.SqlConnection.OnError(SqlException exception, Boolean breakConnection) vid System.Data.SqlClient.SqlInternalConnection.OnError(SqlException exception, Boolean breakConnection) vid System.Data.SqlClient.TdsParser.ThrowExceptionAndWarning(TdsParserStateObject stateObj) vid System.Data.SqlClient.TdsParser.Run(RunBehavior runBehavior, SqlCommand cmdHandler, SqlDataReader dataStream, BulkCopySimpleResultSet bulkCopyHandler, TdsParserStateObject stateObj) vid System.Data.SqlClient.SqlCommand.FinishExecuteReader(SqlDataReader ds, RunBehavior runBehavior, String resetOptionsString) vid System.Data.SqlClient.SqlCommand.RunExecuteReaderTds(CommandBehavior cmdBehavior, RunBehavior runBehavior, Boolean returnStream, Boolean async) vid System.Data.SqlClient.SqlCommand.RunExecuteReader(CommandBehavior cmdBehavior, RunBehavior runBehavior, Boolean returnStream, String method, DbAsyncResult result) vid System.Data.SqlClient.SqlCommand.InternalExecuteNonQuery(DbAsyncResult result, String methodName, Boolean sendToPipe) vid System.Data.SqlClient.SqlCommand.ExecuteNonQuery() vid CreateDB.CreateBlogg() i CreateDB.cs:rad 41
rad 41 är:
cmd.ExecuteNonQuery();
Hur löser man detta??
Tacksam för all hjälp
CatZMedlem sedan jan. 20022 341 inlägg
JAg tycker att
System.Data.SqlClient.SqlException skrev:
Procedure or Function 'CreateBlogg' expects parameter '@bloggName', which was not supplied
talar om precis vad som felet är...
VinnarenMedlem sedan sep. 2005858 inlägg
märkte nu att allt var null eller 0.
Vet inte varför det blir det :OO
public class Create
{
private String security;
private int bloggType;
private int theme;
private String bloggName;
private String userID;
private String phone;
public String Security
{
get { return security; }
set { security = value; }
}
public int BloggType
{
get { return bloggType; }
set { bloggType = value; }
}
public int Theme
{
get { return theme; }
set { theme = value; }
}
public String BloggName
{
get { return bloggName; }
set { bloggName = value; }
}
public String UserID
{
get { return userID; }
set { userID = value; }
}
public String Phone
{
get { return phone; }
set { phone = value; }
}
public Create()
{
}
public Create(string security, int bloggType, int theme, string bloggName, string userID, string phone)
{
this.Security = security;
this.BloggType = bloggType;
this.Theme = theme;
this.BloggName = bloggName;
this.UserID = userID;
this.Phone = phone;
}
public static void CreateBlogg()
{
CreateDB.CreateBlogg();
}
}
från aspx-sidan
Create create = new Create(security, bloggType, theme, bloggName, userID, phone);
Create.CreateBlogg();
när jag anropar CreateBlogg() är allt borta dvs null.
Hur löser jag detta??
Tacksam för all hjälp :stud
freguzMedlem sedan feb. 2005282 inlägg
Jag skulle tippa att eftersom CreateBlogg() är en statisk funktion så har den ingen aning om att du fyllt Createobjektet med fina data. Skulle väl kunna funka om du skickar med createobjektet, typ Create.CreateBlogg(create);
VinnarenMedlem sedan sep. 2005858 inlägg
tack (y) , nu börjar det gå framåt.
Ett problem bara är GUID
Guid security = txtSecurity.Text;
får felmeddelandet:
Det går inte att implicit konvertera typen string till System.Guid
Hur löser man detta??
Tacksam för all hjälp :stud
VinnarenMedlem sedan sep. 2005858 inlägg
PhorpherMedlem sedan feb. 20002 059 inlägg
Vinnaren skrev:
det löste sig med denna :bire :P
http://msdn2.microsoft.com/en-us/library/system.componentmodel.guidconverter.aspx
Det funkar också bra med:
Guid security = new Guid(txtSecurity.Text);
:)