Array
(
)

permitir uso de um campo não obragatorios no formview

Enrico Cacciari
   - 02 mai 2010

Ola pessoal, sou novo no forum e estou começando a programar em asp.net. Como faço para permitir uso de um campo não obragatorios no formview??    Estou usuando o sqlexpress2008 como banco de dados e configurei o campo  para permitir nulos na tabela. Claro que da erro na hora de carregar o form, pois quando a tabela possui um campo NULL o gridview espera uma string. E na hora de cadastrar tambem caso o usuario deixe o campo em branco. como se resolve isso?     Estou tentando fazer uma tela de cadastro, por exemplo: Cadastro de Empresas. Neste formulario tenho um campo "telefone2" que sera de preechimento opcional. Criei um FormView ligado a um objectDataSource. abaixo segue minha classe empresas   #Código

 
 namespace xxx
{
[System.ComponentModel.DataObject]
 
Publi class empresas
{
private static readonly string_conectionString;
 
private _id;
private _nome;
private _fantasia;
private _telefone1;
private _telefone2;
 
public int id
{
get { return _id; }
set { _id = value; }
}

public int nome
{
get { return _nome; }
set { _nome = value; }
}

public int fatasia
{
get { return _fantasia; }
set { _fantasia = value; }
}

public int telefone1
{
get { return _telefone1; }
set { _telefone1 = value; }
}

public int telefone2
{
get { return _telefone2; }
set { _telefone2 = value; }
}
 
public empresas(SqlDataReader reader)
{
_id= (int)reader["empresa_id"];
_id= (string)reader["nome"];
_id= (string)reader["fantasia"];
_id= (string)reader["telefone1"];
_id= (string)reader["telefone2"];
}
 
Dai criei os metodos select e update....

[System.ComponentModel.DataObjectMethodAttribute(System.ComponentModel.DataObjectMethodType.Select, true)]
public static empresas SelectedById(int empresa_id)
{SqlConnection con = new SqlConnection (_conectionString);
SqlCommand cmd = new SqlCommand("cn_SelEmpresaPorId", con);
cmd.CommandType = CommandType.StoredProcedure;
cmd.Parameters.AddWithValue("@empresa_id", empresa_id);
empresas result = null;
using (con)
{
con.Open();SqlDataReader reader = cmd.ExecuteReader();
if (reader.Read())
result = new empresas(reader);
}
return result;
}
 
[System.ComponentModel.DataObjectMethodAttribute(System.ComponentModel.DataObjectMethodType.Update, true)]
Public static void (string nome, string fantasia, string telefone1, string telefone2)
SqlConnection con = new SqlConnection(_conectionString); 
SqlCommand cmd = new SqlCommand("cn_InsereEmpresa", con);
cmd.CommandType = CommandType.StoredProcedure;
cmd.Parameters.AddWithValue("@nome", nome);
cmd.Parameters.AddWithValue("@fantasia", fantasia);
cmd.Parameters.AddWithValue("@telefone1", telefone1);
cmd.Parameters.AddWithValue("@telefone2", telefone2);

using (con)
{
con.Open();
cmd.ExecuteNonQuery();
}
} 
  Qual seria a maneira para gravar Nulos no banco?