Visual Studio 2012 Web Publish tidak menyalin file

229

Saya memiliki proyek Aplikasi Web di VS 2012 dan ketika saya menggunakan alat penerbitan web itu berhasil dibangun tetapi tidak menyalin file apa pun ke target publikasi (Sistem File dalam kasus ini).

Jika saya melihat output build, saya bisa melihat semuanya disalin ke obj \ Release \ Package \ PackageTmp \ dengan benar tetapi yang saya lihat di build output adalah ini:

4> Selesai membangun proyek "{Project} .csproj".
4> Menghapus file yang ada ...
4> Menerbitkan folder / ...
4> ========== Build: 3 berhasil, 0 gagal, 1 up-to-date, 0 dilewati ===== =====
========== Terbitkan: 1 berhasil, 0 gagal, 0 dilewati ==========

Meskipun dikatakan mempublikasikan berhasil, tidak ada file di direktori target untuk mempublikasikan.

Saya telah melihat ini di beberapa proyek dan kadang-kadang sepertinya solusi / konfigurasi Platform menyebabkan masalah ini, tetapi saya belum dapat menentukan penyebab pasti untuk ini.

Adakah orang lain yang melihat hal ini terjadi atau memiliki ide tentang bagaimana agar ini berfungsi dengan benar?

MEMPERBARUI:

Saya mungkin telah menemukan solusi untuk ini. Saya baru saja mengalami ini lagi dan saya sedang bermain-main dengan pengaturan publikasi. Setelah saya mengubah Konfigurasi yang dipilih pada tab Pengaturan pergi ke konfigurasi lain dan kemudian kembali ke yang saya ingin gunakan semua file saya mulai menerbitkan lagi. Semoga ini bekerja pada proyek lain di masa depan.

PEMBARUAN 2:

Saya memposting bug di Microsoft Connect dan mendengar kabar dari pengembang di tim Pengembang Web VS. Dia mengatakan mereka telah memperbaiki masalah ini di internal build mereka dan akan segera merilis pembaruan ke alat publikasi yang akan memperbaiki masalah ini.

PEMBARUAN 3:

Ini baru-baru ini diperbaiki dengan Pembaruan 2 Visual Studio 2012

Jeff Papp
sumber
1
Itu aneh. Jika Anda melihat folder Publishing / ..., itu seharusnya berfungsi dengan benar. Saya sarankan Anda memeriksa jalur Anda. Pastikan Anda melihat tempat yang tepat.
maxisam
14
Ini terjadi pada saya di Windows 8 dengan Visual Studio 2012. Saya baru saja membuat profil penerbitan baru dan berhasil! Mungkin bug di VS 2012.: /
T.Ho
3
Saya memiliki masalah yang sama. Menghapus dan membuat ulang profil penerbitan membantu saya.
Tommy Jakobsen
3
Menghapus dan membuat ulang profil telah membantu saya.
Michael Wells
3
Ini belum diperbaiki di Visual Studio Update 2, atau di Update 3. Periksa jawaban yang paling populer setelah "jawaban yang diterima" (yang bukan solusinya). Cukup edit profil dan -dalam tab "Pengaturan" - pilih konfigurasi yang benar dari daftar (jika rilis adalah yang bagus, pilih debug, simpan, lalu edit lagi dan pilih rilis). Simpan dan publikasikan.
firepol

Jawaban:

78

Ini mungkin disebabkan oleh solusi / proyek yang dibuat dengan RC vs2012. Ini terjadi pada saya berbulan-bulan yang lalu dan memperbaiki masalah dengan memastikan konfigurasi solusi membangun saya cocok dengan konfigurasi proyek saya ...

Saya baru saja mengalami masalah yang sama ketika membuka solusi yang sama yang awalnya dibuat di VS2012RC dengan VS2012 Express untuk Web. Saya melakukan persis apa yang disarankan oleh poster asli dan itu memperbaiki masalah saya.

Inilah utas yang menuntun saya ke jawabannya:

connect.microsoft.com/VisualStudio/feedback/details/746321/publish-web-aplikasi-fails

Tanggapan penting dari percakapan di atas yang membantu saya adalah:

Diposting oleh Microsoft pada 6/13/2012 pada 12:00 PM Hai Andrew,

Ini adalah bug dalam cara kami menangani konfigurasi solusi vs. konfigurasi proyek. Kami salah berasumsi bahwa mereka akan sama (misalnya Rilis Solution | x86 akan membuat setiap proyek diatur ke Rilis | x86 juga), yang menyebabkan kami menggunakan properti build yang salah untuk menerbitkan file.

Solusinya adalah membuat konfigurasi solusi dan membangun kecocokan konfigurasi. Masalah ini akan diperbaiki pada rilis berikutnya dari Visual Studio 2012.

Terima kasih, - Jimmy Lewis SDET, tim Pengembang Web Visual

Dave Riedl
sumber
8
Masalah ini terjadi pada saya di proyek Visual Studio 2012 baru. Ini diterbitkan melalui FTP di masa lalu, tetapi sekarang ketika saya mencoba untuk mempublikasikannya melakukan persis seperti di atas - itu berpura-pura, mengatakan itu berhasil, dan tidak mendorong apa pun. Itu membangun output ke objek obj, tetapi tidak pernah benar-benar menyalinnya ke server. Trik Konfigurasi perubahan tidak memperbaikinya.
Chris Moschini
12
Hei! Itu masih rusak di SP2!
6
Saya baru saja mengalami masalah yang sama dan menyadari itu karena pengaturan mempublikasikan default ke "Any CPU", tetapi solusi saya diatur ke "x86". Mengubah Pengaturan di Terbitkan ke x86 memperbaiki masalah.
Sam
Tidak ada solusi di atas yang berfungsi untuk saya. Menghapus profil dan membuat ulang, mengubah konfigurasi dan mengubah kembali, memulai kembali VS, membangun kembali semua, dll. Saya membuat tampilan baru di aplikasi saya. Itu disana. Saya dapat melihatnya. Ketika saya menjalankan secara lokal itu akan ditampilkan. Ketika saya menerbitkan, itu tidak ada di sana. Saya memiliki pembaruan 4.
Robert
Satu-satunya hal yang berhasil bagi saya adalah menghapus pandangan saya dari proyek dan menambahkan lagi. Tampaknya untuk membangunkan IDE hingga gagasan bahwa ada sesuatu yang baru di sini. Jadi di mana pun VS melacak penambahan dan pengurangan proyek mungkin terlibat.
Robert
104

Permasalahan yang sama. Solusinya adalah mengubah pengaturan publikasi dari Rilis ke Debug. Terbitkan ulang, lalu ubah kembali ke Rilis ...

Roberto Nunes
sumber
YA! Ini jawaban yang bagus. Dalam kasus saya, saya tidak menggunakan profil "Rilis" atau "Debug" default, tetapi "DEV", "STAGE" dan "LIVE". Saya telah melihat bahwa misalnya untuk STAGE, pada komputer kolega yang mengunduh solusi saya melalui TFS, profilnya salah diatur ke "Release" (sama untuk semua profil lainnya). Jadi saya hanya harus memperbaikinya dan mengarahkannya ke "STAGE" (atau DEV / LIVE untuk yang lain). Publikasi berhasil. Terima kasih.
firepol
Bekerja seperti pesona. Yang ini harus jawaban yang diterima.
Aycan Yaşıt
39

Untuk mengambil ini sedikit lebih jauh. Anda memiliki dua file yang dibuat saat Anda membuat profil terbitkan.

  • NewProfile.pubxml
  • NewProfile.pubxml.user

Ketika Anda membuka proyek yang memiliki file-file ini di folder PublishProfile dari kontrol sumber, ia hanya memiliki .pubxmlfile dan bukan .publxml.userfile, jadi itu membuat .publxml.userfile dengan cepat ketika Anda membuka proyek. Saat itu membuat yang baru .publxml.userdengan cepat xml terlihat seperti:

<Project ToolsVersion="4.0" xmlns="http://schemas.microsoft.com/developer/msbuild/2003">
</Project>

Ketika Anda membuat profil baru itu membuat xml yang terlihat seperti:

<Project ToolsVersion="4.0" xmlns="http://schemas.microsoft.com/developer/msbuild/2003">
  <PropertyGroup>
    <LastUsedBuildConfiguration>Release</LastUsedBuildConfiguration>
    <LastUsedPlatform>Any CPU</LastUsedPlatform>
    <TimeStampOfAssociatedLegacyPublishXmlFile />
    <EncryptedPassword />
  </PropertyGroup>
</Project>

Jika Anda mengambil <PropertyGroup>simpul dan memasukkannya ke dalam .pubxml.userfile, Publikasi Anda akan mulai berfungsi kembali.

Eric Wild
sumber
5
+1 Sepertinya bagi saya. Ini membuatnya sedikit lebih mudah jika Anda membuka dua file dan membandingkannya setelah membuat profil baru. Saya juga menemukan bahwa kedua file perlu diperiksa ke dalam kontrol sumber jika bekerja dalam tim.
Deano
@Deano Masalah dengan memeriksa file * .user apa pun adalah Anda tidak lagi memiliki kemampuan untuk kustomisasi proyek individu (lokal). Maksud dari file pengguna adalah untuk memungkinkan anggota tim individu memiliki pengaturan lokal mereka sendiri.
Dave Riedl
Apakah ada solusi lain alih-alih menambahkan file ".pubxml.user" ke dalam kontrol sumber?
Ubikuity
Kami tidak mengkomit * .user file ke dalam kontrol sumber, tetapi secara kebetulan, kami tidak menggunakan profil publikasikan di dalam Visual Studio, sebagai server Integrasi Berkelanjutan kami dan proses pembuatan mengelola semua itu ...
Brett Rigby
21

Perbaikan yang mudah adalah dengan menghapus profil publikasi Anda dan membuat yang baru.

ketika Anda mengklik kanan pada solusi Anda dan memilih terbitkan, Anda memiliki kumpulan profil. hapus ini dan buat yang baru.

ini akan memperbaikinya.

Saya punya masalah ini dari beralih dari 2010 ke 2012

JGilmartin
sumber
Ini berfungsi untuk saya, apa yang saya lakukan adalah menghapus profil di mesin lokal dan membuatnya kembali. Ini tidak mempengaruhi mesin pengembangan lainnya.
Jean Jimenez
Saya mengalami masalah saat beralih proyek dari vs2013 ke vs2012 dan ini benar-benar memperbaiki masalahnya
NikiUsefi
Ini berhasil untuk saya. Saya menggunakan langkah-langkah ini untuk membangun kembali profil (file system) saya yang diterbitkan: stackoverflow.com/a/20616521/381082
DeveloperDan
9

Saya memiliki kesalahan yang sama dan saya mengubah pengaturan dari rilis ke debug dan masalah teratasi ..

Stack User
sumber
8

Saya memiliki masalah yang sama namun tidak ada jawaban di utas ini yang berfungsi untuk saya. Masalah saya adalah ada direktori yang berisi file HTML statis yang dihasilkan secara dinamis (oleh aplikasi saya). Seluruh direktori tidak dipublikasikan.

Solusi yang bekerja untuk saya ditemukan di sini :

Satu masalah yang saya dapatkan beberapa waktu lalu dan saya pikir saya harus mendokumentasikan adalah bahwa jenis file tertentu tidak diunggah ketika saya menerbitkan proyek saya.

Jenis file yang dimaksud adalah file .pdf dan .rtf.

Alasan ini terjadi adalah karena ekstensi file ini tidak dikenali sebagai memerlukan penerbitan oleh Visual Studio. Untungnya ini bisa diubah di Visual Studio.

Pilih file yang tidak disalin. Dalam Properti memastikan bahwa Build Action diatur ke Konten .

Jika ini tidak berhasil, berikut ini dapat dicoba.

Di bawah menu Project pilih Package / Publish Web dan perhatikan drop-down ini:

masukkan deskripsi gambar di sini

Coba ubah ini ke Semua file di folder proyek ini.

Charles Wesley
sumber
Ini bekerja untuk situasi saya - ketika hanya BEBERAPA file yang diterbitkan.
AndrewRalon
Ini hanya berfungsi karena file tidak dimasukkan dalam proyek dengan benar. Lihat jawaban ini di bawah untuk mengetahui akar penyebab dan solusinya: stackoverflow.com/a/40721544/3520070
AndrewRalon
Apa jawaban yang Anda maksudkan di bawah ini?
Tomas Kubes
7

Ini karena .pubxml.user berisi informasi yang diperlukan untuk dipublikasikan, dan file itu tidak (dan tidak boleh) dimasukkan dalam kontrol sumber. Untuk memperbaiki bug VS ini, salin informasi dari file .pubxml.user ke file .pubxml. Properti yang relevan adalah:

<LastUsedBuildConfiguration>Release</LastUsedBuildConfiguration>
<LastUsedPlatform>Any CPU</LastUsedPlatform>

Taruh itu di .pubxml Anda dan Anda harus siap.

Chris Hynes
sumber
7

Saya mencoba semua solusi ini tetapi ini adalah solusi yang bekerja setiap saat.

Kami hanya mengubah "Metode terbitkan:" dari "Sistem File" ke misalnya "Web Deploy", dan segera ubah kembali ke "Sistem File".

pengguna2896889
sumber
Ya inilah yang akhirnya berhasil juga untuk saya (coba semua saran lainnya di atas). Ini dengan vs2010
Karen
5

Saya memiliki (memiliki) masalah yang sama untuk beberapa proyek. Satu-satunya yang terkena tampaknya proyek web. Menghapus dan membuat ulang profil hanya menyelesaikan satu kali masalah. Selain itu, membandingkan publishxml menghasilkan tidak ada perbedaan, jadi sepertinya tidak ada hubungannya dengan profil sama sekali.

Solusi yang disebutkan oleh OP untuk mengubah masalah pembangunan bolak-balik tampaknya satu-satunya solusi yang dapat diandalkan saat ini.

Bob Noordam
sumber
Solusi yang sama adalah satu-satunya perbaikan bagi saya juga. Untuk memperjelas, langkah-langkah: Bangun> Terbitkan. Pilih tab Pengaturan di sebelah kiri. Ubah Konfigurasi Bangun ke yang lain. Anda akan melihat sekarang ada tanda bintang (*) di sebelah nama Profil Penerbit - itu pertanda bug telah digagalkan. Ubah Konfigurasi Bangun kembali ke apa yang Anda inginkan. Lanjutkan dengan Publikasikan seperti biasa. Tetap.
Chris Moschini
4

Saya mengalami masalah yang sama pada VS 2010, setelah memeriksa keluaran publikasi, log peristiwa, menyalakan dan memeriksa visual studio log dll. Saya kemudian memutuskan untuk menghapus web publish (via add / remove) yang saya percaya baru saja diperbarui ke v1. 0.30810.0. Ini menyelesaikan masalah.

Matt Jordan
sumber
2
Kami mengalami masalah ini, sepertinya terkait dengan file pubxml.user di folder PublishProfiles di bawah Proyek Saya - milik saya memiliki daftar file yang dihasilkan mesin, meskipun dokumentasi mengatakan bahwa file ini hanya untuk pengaturan khusus untuk saya ( dan karenanya tidak ditempatkan dalam kontrol sumber). Saya bisa menerbitkan apa-apa. Rekan saya mengambil salinan baru kode sumber kami dan tidak dapat mempublikasikan - ketika file pubxml.user-nya dibuat, tidak ada file yang terdaftar. Kami telah menghapus instalan publikasi web yang diperbarui dan semuanya baik-baik saja.
Nick
4

Di sini kami memiliki masalah yang sama.

Kami hanya mengubah "Metode terbitkan:" dari "Sistem File" ke misalnya "Web Deploy", dan segera ubah kembali ke "Sistem File".

Beruang koala
sumber
ini harus di atas
JoeBrockhaus
Ini sekarang diperbaiki dengan Visual Studio 2012 Pembaruan 3
KoalaBear
4

Berikut ini bekerja untuk saya:

Cukup ubah dari Rilis> Debug> Rilis (atau sebaliknya) lalu publikasikan.

Tidak perlu menghapus, mengedit, menerbitkan apa pun yang Anda tidak perlu.

dav_i
sumber
4

Masalah saya adalah konfigurasi file myproject.csproj yang salah. File '_address-step1 -impan.cshtml' tidak menyalin pada publikasi. 'Tidak ada' berubah menjadi 'Konten', sekarang tidak apa-apa. masukkan deskripsi gambar di sini

Yara
sumber
ITULAH ITU! Proyek memiliki banyak file yang diperiksa ke dalam kontrol sumber, tetapi ditandai seperti Nonedalam file .csproj, atau benar-benar hilang dari proyek (ada tetapi tidak "digunakan")! Ini sepenuhnya menjelaskan mengapa menjalankan secara lokal selalu berhasil, tetapi penerbitan tidak pernah berhasil. : D
AndrewRalon
3

Masalah yang sama dengan VS 2012 Pro dengan target penerbitan disk. Proyek yang digunakan untuk mempublikasikan dengan benar tetapi mulai melakukan masalah ini ketika gagal menyalin file ke folder tujuan.

Solusi adalah mengedit profil publikasikan, ubah mode dari Release (Any CPU) ke debug kemudian kembali ke Release (Any CPU). Melakukan hal ini menyebabkan file PublishProfiles \ projname.pubxml.user ditulis ulang (seperti dijelaskan di atas). Sepertinya itu menambahkan elemen LastUsedBuild, LastUsedPlatform, dan TimeStampOfAssociatedLegacyPublishXmlFile di bawah node propertygroup. Setelah publikasi selesai, itemGroup lain ditambahkan dengan file individual dan waktu publikasi.

mellodev
sumber
1

Tindakan ini berhasil bagi saya:

Bunuh Publikasi Profil di "Properties> PublishProfiles> xxxx.pubxml" dan atur kembali.

MichAdel
sumber
1

Untuk apa nilainya, saya akhirnya menyerah pada pertempuran dengan Web Deploy untuk membuatnya melakukan apa yang saya inginkan (salin file yang dapat digunakan dan tidak ada yang lain), jadi saya menuliskannya di PowerShell dan sangat senang dengan hasilnya. Ini jauh lebih cepat daripada apa pun yang saya coba melalui MSBuild / Web Publish, mungkin karena metode itu masih melakukan hal-hal yang tidak saya butuhkan.

Inilah intinya ( secara harfiah ):

function copy-deployable-web-files($proj_path, $deploy_dir) {
  # copy files where Build Action = "Content" 
  $proj_dir = split-path -parent $proj_path
  [xml]$xml = get-content $proj_path
  $xml.Project.ItemGroup | % { $_.Content } | % { $_.Include } | ? { $_ } | % {
    $from = "$proj_dir\$_"
    $to = split-path -parent "$deploy_dir\$_"
    if (!(test-path $to)) { md $to }
    cp $from $to
  }

  # copy everything in bin
  cp "$proj_dir\bin" $deploy_dir -recurse
}

Dalam kasus saya, saya menyebutnya dalam lingkungan CI (TeamCity), tetapi bisa dengan mudah dihubungkan ke acara pasca-pembangunan juga.

Todd Menier
sumber
1

Saya menemukan saya bisa menyelesaikan masalah ini dengan mengubah lokasi target dari obj / [release | stage | ..] ke jalur baru di luar folder solusi sepenuhnya misalnya c: \ deployment. Sepertinya VS 2012 semakin bingung dan mungkin menyerah di suatu tempat selama proses penerbitan.

Mat

Wilkoteq
sumber
1

Punya masalah yang sama baru-baru ini di VS 2013 untuk proyek MVC di mana saya mengimpor Umbraco CMS. Saya tidak bisa menerbitkan. Jawaban di atas membantu, meskipun saya perlu beberapa saat untuk mencari tahu apa yang sebenarnya harus saya lakukan dalam VS. Perlu beberapa penelitian misalnya di blog MS untuk mengetahuinya. Saya mencoba mengatakannya secara sederhana:

  • Pilih di toolbar VS konfigurasi tertentu misalnya Rilis dan CPU Apa Pun. Jalankan proyek.
  • Setelah itu klik kanan di Solution Explorer pada solusi yang dimaksud, pilih Terbitkan. Buat profil penerbitan baru atau gunakan yang diberikan, tetapi selalu pastikan bahwa dalam pengaturan konfigurasi yang sama (misalnya Rilis dan CPU Apa Pun) dipilih, seperti sebelum Anda menjalankan proyek terakhir kali.
  • Selain itu dalam kasus saya perlu untuk menghapus folder OBJ karena di sini pengaturan dari upaya gagal saya yang terakhir untuk menerbitkan macet, meskipun saya me-restart VS dan menghapus semua profil penerbitan.
Anja
sumber
0

Saya memiliki Aplikasi Web dengan beberapa Proyek lain yang dirujuk dalam Solusi. Saya telah berhasil digunakan dengan konfigurasi Publikasikan tunggal beberapa kali di masa lalu. Saya mengubah Konfigurasi Proyek dari Debug ke Rilis untuk Proyek yang telah terjawab di masa lalu. Lain kali ketika saya mencoba untuk menyebarkan saya mendapat gejala-gejala ini, di mana Penerbit hanya diam-diam gagal - tidak melakukan apa-apa dan mengatakan itu berhasil:

1>------ Build started: Project: Project, Configuration: DeployProduction Any CPU ------
1>  
2>Publishing folder /...
========== Build: 1 succeeded, 0 failed, 9 up-to-date, 0 skipped ==========
========== Publish: 1 succeeded, 0 failed, 0 skipped ==========

Satu-satunya cara untuk memulihkannya adalah menghapus profil Terbitkan, tutup Visual Studio untuk memaksanya menyimpan penghapusan, buka kembali, dan buat ulang profil Terbitkan dari awal. Setelah saya melakukan itu saya bisa menerbitkan baik-baik saja.

Win8 VS2012, laptop jelek.

Chris Moschini
sumber
0

Di Visual Studio 2012, beralih di antara rilis masih menyebabkan masalah.

Kami menambahkan acara pra-bangun untuk menghapus objfolder: del /s /f /q $(ProjectDir)\objdan itu memperbaiki masalah penerbitan. Pembersihan kadang-kadang berhasil, tetapi tidak selalu.

Candide
sumber
0

Saya akhirnya menemukan jawabannya sendiri. Semua solusi di atas tidak bekerja untuk saya.

Apa yang telah saya lakukan adalah bahwa saya memindahkan proyek ke drive c mengubah folder proyek ke sesuatu yang lebih pendek dan boom itu mempublikasikan ..

alasan mengapa itu gagal di pihak saya adalah karena saya mempunyai nama proyek / heirarki yang sangat panjang.

C: \ Users \ user \ Desktop \ Sistem Manajemen Kepatuhan \ ComplianceIssueManagementSystem \ ComplianceIssueManagementSystem

Saya telah memikirkan hal ini karena kadang-kadang ketika saya mengekstrak file rar dikatakan bahwa nama / path terlalu panjang. Saya pikir itu akan sama dengan penerbitan visual studio 2012. dan itu!

Semoga ini bisa membantu kalian.

Joebet
sumber
0

Periksa proyek Anda saat ini apakah Anda telah membuat salinan kembali dengan nama kelas yang sama dan nama halaman yang berbeda (Nama kelas akan mewarisi file yang disalin). Pada akhirnya itu akan membingungkan kompiler !!!

CodeFile = "Consolidated.aspx.vb" Inherits = "Consolidated

Dileep
sumber
0

Tidak ada solusi di atas yang berfungsi untuk saya.

Tapi saya perhatikan bahwa dari lima proyek ASP.NET MVC kami di solusi utama kami, empat di antaranya menempatkan paket penempatan di tempat yang tepat, sementara satu meninggalkannya di bawah obj \ Debug.

Saya membandingkan proyek dan menemukan perbedaan. Solusinya adalah mengubah ini :

<Import
    Project="$(MSBuildExtensionsPath32)\Microsoft\VisualStudio\v10.0\WebApplications\Microsoft.WebApplication.targets" />

untuk ini :

<Import
  Project="$(VSToolsPath)\WebApplications\Microsoft.WebApplication.targets"
  Condition="'$(VSToolsPath)' != ''" />
<Import
  Project="$(MSBuildExtensionsPath32)\Microsoft\VisualStudio\v10.0\WebApplications\Microsoft.WebApplication.targets"
  Condition="false" />

Setelah saya melakukan perubahan ini, kelima proyek menempatkan paket penyebaran mereka di tempat yang tepat.

(Maaf tentang antrian panjang, tapi aku tidak bisa menemukan cara yang lebih baik untuk menyingkatnya.)

Ryan Lundy
sumber
Saya mengalami situasi di mana satu atau dua file tampaknya diabaikan dan tidak dipublikasikan ke server, tetapi, file .vbproj saya sudah memiliki kedua elemen <Import> yang Anda sarankan
bkwdesign
0

Saya menemukan ini dengan Referensi Layanan yang dihasilkan Visual Studio file menjadi terlalu panjang dalam hal keseluruhan lintasan.

Memperpendeknya dengan membuat kembali Referensi Layanan menggunakan svcutil.exe, menghapus semua file Referensi Layanan asli.

svcutil dapat disebut seperti ini:

"C:\Program Files (x86)\Microsoft SDKs\Windows\v8.0A\bin\NETFX 4.0 Tools\SvcUtil.exe" /language:CS http://myservice /namespace:*,My.Namespace

My.Namespace harus diganti dengan namespace yang ada di proksi layanan yang dihasilkan (biasanya ditemukan di file Reference.cs) untuk menghindari kesalahan kompilasi.

http://myservice harus diganti dengan url titik akhir layanan.

berlayar
sumber
0

Saya mengalami masalah yang sama. Tidak ada solusi di atas yang berfungsi untuk saya.

Jadi, saya sudah mengecualikan file yang gagal disalin saat menerbitkan.

Rahul Nikate
sumber
0

Saya telah menerbitkan situs web beberapa kali. Tetapi suatu hari ketika saya memodifikasi beberapa file aspx dan kemudian mencoba untuk mempublikasikan situs web, itu menghasilkan folder yang diterbitkan kosong.

Pada solusi saya, saya menemukan solusi.

  1. Panduan penerbitan akan mencerminkan kesalahan apa pun saat menerbitkan tetapi tidak akan menyalin file apa pun ke folder tujuan.

  2. Untuk mengetahui file yang menghasilkan kesalahan cukup salin konten folder situs web ke folder baru dan mulai studio visual dengan situs web itu.

  3. Sekarang ketika Anda mencoba untuk menerbitkannya akan memberi Anda nama file yang mengandung kesalahan.

  4. Hanya memperbaiki kesalahan dalam folder situs web asli dan mencoba untuk menerbitkan, itu akan berfungsi seperti sebelumnya.

Ramanathan RM
sumber
0

Ikuti langkah-langkah ini untuk menyelesaikan:

Build > Publish > Profile > New

Buat profil baru dan konfigurasikan dengan pengaturan yang sama dengan profil Anda yang ada.

Proyek sekarang akan menerbitkan dengan benar. Ini sering terjadi sebagai hasil dari profil publikasi yang dikontrol oleh sumber dari komputer lain yang dibuat di versi yang lebih baru dari Visual Studio.

Adam
sumber
0

TETAP - berbagai solusi yang ditawarkan tidak bekerja untuk saya. Apa yang berhasil bagi saya dengan VS Community 2017, Windows Server 2012 R2 adalah mengubah variabel lingkungan TEMP dan TMP untuk pengguna dan kemudian restart sistem dan menggunakan lagi (restart VS tidak cukup). Variabel temp ini adalah tempat VS menerbitkan temp.

masukkan deskripsi gambar di sini

masukkan deskripsi gambar di sini

masukkan deskripsi gambar di sini

Restart studio visual setelah mengubah variabel temp tidak berhasil, harus reboot sistem.

Jason Hitchings
sumber
-1

Pertama:

  • Build in release Configuration.
  • Di Project Properties-> halaman pilih Semua file dan folder di bawah Paket / Publikasikan Web.
  • Membangun kembali solusi (setelah solusi Bersih).
  • sekarang publikasikan.

Saat menerbitkan, periksa kembali apa yang telah Anda pilih.
ini harus dilakukan. Itu untuk saya! :)

ManjunathMayurRK
sumber
-2

Yang paling mudah adalah,

   1. select the file(s) that are not being copied,
   2. Press <F4> to get the properties window
   3. Make the "Build Action" property "compile" or "content" depending on what it is.
   4. Now this particular file will be included!
Ali A
sumber