asp.net コア 2.2
model.file または別の file.Don't come file.Everytime は null です。ネストされた ajax または実行中の順序 ajax。
プロフィールを更新したい。できました。ファイルが作品にアップロードされると、私は爆発しました。
異なるajaxクエリを使用したファイルのアップロードとユーザーの更新? さまざまなメソッドでさまざまな ajax クエリを期待する必要がありますか? それとも、単一の ajax クエリで処理されますか?
申し訳ありませんが、私の悪い英語。
コントローラ:
public IActionResult UpdateProfile(ProfileModel model, IFormFile file)
{
var result = userOperation.UpdateUser(model).Result;
if (result.Succeeded)
{
return Ok();
}
else
{
return BadRequest();
}
}
プロファイル モデル:
public class ProfileModel
{
public string UserId { get; set; }
public string username { get; set; }
public string Name { get; set; }
public string SurName { get; set; }
public string ProfilePhoto { get; set; }
public IFormFile file { get; set; }
}
Jクエリ:
var isim = $('#name');
var soyisim = $('#surname');
var menu = $('#navInside');
var cikis = $('#logout');
var updateCikis = $('#exit');
var update = $('#update');
var goUpdate = $('#goUpdate');
var kaydet = $('#kaydet');
var dosya = $('input[type=file]');
var username2 = $('#username').val();
kaydet.click(function (event) {
event.preventDefault();
$.ajax({
url: '/Registered/UpdateProfile',
data: { Name: isim.val(), SurName: soyisim.val(), username: '@User.Identity.Name' },
type: 'POST',
success: function (result) {
console.log('basarili güncelleme');
var formData = new FormData();
formData.append('file', dosya[0].files[0].name);
console.log(dosya[0].files[0].name);
console.log(JSON.stringify(dosya[0].files[0]));
$.ajax({
url: '/Registered/UpdateProfile',
data: { Name: isim.val(), SurName: soyisim.val(), username: '@User.Identity.Name', file: formData },
processData: false,
contentType: false,
type: 'POST',
success: function(){
alert('foto da gittiii');
}
});
}
});