У меня есть веб-приложение, написанное на C#/ASP.NET, которое использует библиотеку классов для Get, Insert & Обновить информацию. Это приложение работает на двух разных языках: английский & французский.Как получить нужный ресурс из библиотеки классов
Как только пользователь вошел в систему, я смогу обнаружить его культуру (уже сохраненную в db) и правильно отобразить правильные французские/английские метки, получив правильный файл ресурсов.
В библиотеке классов (.dll) я добавил 2 файла ресурсов для французского языка & Английская версия для возврата сообщения об ошибке на основе культуры пользователя.
Так что моя проблема в том, когда я пытаюсь обновить профиль пользователя и культура французская, а в поле «Адрес» поле пустое системы постоянно возвращается на английском сообщении независимо от культуры пользователя
Вот снимок из моей библиотеки классов (.dll)
public string Address1
{
get { return _Address1; }
set
{
if (string.IsNullOrEmpty(value))
{
// Error! The field « Address » is mandatory!");
throw new Exception(Resources.CTenant_Messages.Address1_Missing.ToString());
}
else if (value.ToString().Trim().Length > LibNamtek.Public.CConstant.LENGTH_300)
{
// Error! The total length for « Address » exceeds " + LibNamtek.Public.CConstant.LENGTH_300.ToString() + " caracters.");
throw new Exception(Resources.CTenant_Messages.Address1_Length.ToString().Replace("[LENGTH]", LibNamtek.Public.CConstant.LENGTH_300.ToString()));
}
else
{
_Address1 = value;
}
}
}
public DataSet UpdateUser()
{
string v_connection_string = CConnection.GetDBConnection();
SqlConnection v_connection = new SqlConnection(v_connection_string);
try
{
// Open Connection
v_connection.Open();
SqlCommand cmd = new SqlCommand("pr_update_user", v_connection);
cmd.CommandType = CommandType.StoredProcedure;
cmd.Parameters.Add("@p_user_id", SqlDbType.Int);
cmd.Parameters["@p_user_id"].Value = this.UserId;
cmd.Parameters.Add("@p_name", SqlDbType.NVarChar);
cmd.Parameters["@p_name"].Size = LibNamtek.Public.CConstant.LENGTH_300;
cmd.Parameters["@p_name"].Value = this.Name;
cmd.Parameters.Add("@p_address1", SqlDbType.NVarChar);
cmd.Parameters["@p_address1"].Size = LibNamtek.Public.CConstant.LENGTH_300;
cmd.Parameters["@p_address1"].Value = this.Address1;;
cmd.Parameters.Add("@p_address2", SqlDbType.NVarChar);
cmd.Parameters["@p_address2"].Size = LibNamtek.Public.CConstant.LENGTH_300;
cmd.Parameters["@p_address2"].Value = (this.Address2 == LibNamtek.Public.CConstant.DEFAULT_STRING ? DBNull.Value : (object)this.Address2);
cmd.Parameters.Add("@p_city", SqlDbType.NVarChar);
cmd.Parameters["@p_city"].Size = LibNamtek.Public.CConstant.LENGTH_300;
cmd.Parameters["@p_city"].Value = this.City;
cmd.Parameters.Add("@p_province", SqlDbType.NVarChar);
cmd.Parameters["@p_province"].Size = LibNamtek.Public.CConstant.LENGTH_300;
cmd.Parameters["@p_province"].Value = this.Province;
cmd.Parameters.Add("@p_country_id", SqlDbType.Int);
cmd.Parameters["@p_country_id"].Value = this.CountryId;
cmd.Parameters.Add("@p_postal_code", SqlDbType.NVarChar);
cmd.Parameters["@p_postal_code"].Size = LibNamtek.Public.CConstant.LENGTH_30;
cmd.Parameters["@p_postal_code"].Value = this.PostalCode;
cmd.Parameters.Add("@p_phone1", SqlDbType.NVarChar);
cmd.Parameters["@p_phone1"].Size = LibNamtek.Public.CConstant.LENGTH_30;
cmd.Parameters["@p_phone1"].Value = this.Phone1;
cmd.Parameters.Add("@p_fax", SqlDbType.NVarChar);
cmd.Parameters["@p_fax"].Size = LibNamtek.Public.CConstant.LENGTH_30;
cmd.Parameters["@p_fax"].Value = (this.Fax == LibNamtek.Public.CConstant.DEFAULT_STRING ? DBNull.Value : (object)this.Fax);
cmd.Parameters.Add("@p_email", SqlDbType.NVarChar);
cmd.Parameters["@p_email"].Size = LibNamtek.Public.CConstant.LENGTH_300;
cmd.Parameters["@p_email"].Value = this.Email;
cmd.Parameters.Add("@p_memo", SqlDbType.NVarChar);
cmd.Parameters["@p_memo"].Value = (this.Memo == LibNamtek.Public.CConstant.DEFAULT_STRING ? DBNull.Value : (object)this.Memo);
cmd.Parameters.Add("@p_system_date", SqlDbType.DateTime);
cmd.Parameters["@p_system_date"].Value = this.SystemDate;
cmd.Parameters.Add("@p_system_user", SqlDbType.NVarChar);
cmd.Parameters["@p_system_user"].Size = LibNamtek.Public.CConstant.LENGTH_30;
cmd.Parameters["@p_system_user"].Value = this.SystemUser;
SqlDataAdapter da = new SqlDataAdapter(cmd);
DataSet ds = new DataSet("UpdateTenant");
da.Fill(ds);
return ds;
}
catch (Exception ex)
{
throw ex;
}
finally
{
if (v_connection != null)
{
v_connection.Close();
}
}
}
Я отредактировал ваш заголовок. Пожалуйста, смотрите: «Если вопросы включают« теги »в их названиях?] (Http://meta.stackexchange.com/questions/19190/), где консенсус« нет, они не должны ». –