我在项目中使用EDM模型。
当我通过发布请求在数据库中插入俄语单词时,我得到 ??????
??????
控制器:
[Authorize] [HttpPost] public string DescEdit(FormCollection formValues) { var CurrentUserPhoto = User.Identity.Name; string x = Request.Form["id"]; Int64 id = Convert.ToInt64(x); photos upPhotoDesc = photosRepository.GetPhotosById(id, CurrentUserPhoto); upPhotoDesc.description = Request.Form["value"]; photosRepository.Save(); return Request.Form["value"]; }
数据库代码:
CREATE TABLE `photos` ( `id` bigint(255) NOT NULL AUTO_INCREMENT, `done` tinyint(1) NOT NULL DEFAULT '0', `imgsmall` varchar(255) NOT NULL DEFAULT '', `imgcrop` varchar(255) NOT NULL DEFAULT '', `imgmiddle` varchar(255) NOT NULL DEFAULT '', `imgbig` varchar(255) NOT NULL DEFAULT '', `full_size` varchar(255) NOT NULL DEFAULT '', `description` varchar(255) DEFAULT NULL, `name` varchar(255) DEFAULT NULL, `permission` tinyint(1) NOT NULL DEFAULT '0', `userid` int(11) NOT NULL DEFAULT '0', `userlogin` varchar(255) NOT NULL DEFAULT '', `rating` smallint(5) DEFAULT '0', PRIMARY KEY (`id`), KEY `indx_photos_1` (`id`,`userlogin`) ) ENGINE=InnoDB DEFAULT CHARSET=utf8 COLLATE utf8_unicode_ci;
添加charset=utf8到Entity Framework的连接字符串中 这是一个工作添加节点:
charset=utf8
<add name="photostorageEntities" connectionString="metadata=res://*/Models.Photos.csdl|res://*/Models.Photos.ssdl|res://*/Models.Photos.msl;provider=MySql.Data.MySqlClient;provider connection string="server=ServerIP;User Id=UID;password=PASS;Persist Security Info=True;database=photostorage; Charset=utf8"" providerName="System.Data.EntityClient" />