当我尝试在我的数据库中保存中文等Unicode数据时,它会在sql数据库表中保存为问号???????
。
public IHttpActionResult SaveSelections(UserPreference model)
{
var user = db.UserPreferences.FirstOrDefault(p => p.UserName == model.UserName);
//var psellers= db.PSellers.ToArray();
if (user == null)
{
try
{
db.UserPreferences.Add(model);
db.SaveChanges();
}
catch (Exception e)
{
return BadRequest(e.Message);
}
}
else
{
try
{
user.AreaText = model.AreaText;
user.RegionText = model.RegionText;
db.SaveChanges();
}
catch (Exception e)
{
return BadRequest(e.Message);
}
}
return Ok();
}
答案 0 :(得分:0)
您的数据库正如您在评论中所说的那样,不接受UTF8但是ASCII。要使数据库接受unicode字符,您需要执行以下命令:
CREATE DATABASE mydatabase CHARACTER SET utf8 COLLATE utf8_general_ci;
有关详细信息,请参阅Database Character Set and Collation。
基本上,创建新数据库并将当前数据传输给它。如果您不知道该怎么做,答案是here。