โปรแกรมไม่มีวิธีการ 'คงที่' ที่เหมาะสมสำหรับจุดเข้าใช้งาน


169

ทันใดนั้นโครงการทั้งหมดของฉันหยุดคอมไพล์เลยแสดงข้อความต่อไปนี้:

โปรแกรม 'path_to_obj_project_folder' ไม่มีวิธีการ 'คงที่' ที่เหมาะสมสำหรับจุดเข้า

ฉันไม่ทำการเปลี่ยนแปลงคุณสมบัติของโครงการเพียงเพิ่มคลาสบางคลาสย้ายคลาสอื่น ๆ ไปยังโฟลเดอร์ มันเป็นโครงการแอปพลิเคชัน WPF ดังนั้นมันควรจะตกลงทั้งหมด จุดเข้าคือที่ที่ควรเป็นไฟล์ App.xaml ไม่ได้ถูกแก้ไขเลย :(

ฉันควรทำอย่างไรเพื่อให้ทำงานได้อีกครั้ง

คำตอบ:


432

ตรวจสอบคุณสมบัติของapp.xaml คือBuild ActionยังApplicationDefinition?


10
ขอบคุณที่แก้ไขปัญหาบางส่วนแล้ว ผมได้คัดลอกไฟล์ทั้งหมดจากโครงการเก่าไปใหม่Windows Store AppโครงการและBuild Actionถูกกำหนดให้แทนPage ApplicationDefinitionฉันเปลี่ยนกลับเป็นApplicationDefinitionแต่ฉันต้องลบโฟลเดอร์obj\Debugด้วย
Richard H

4
+1: ยอดเยี่ยม! ผู้ช่วยชีวิตอย่างแท้จริง ฉันเพิ่งจะสร้างโครงการใหม่และคัดลอกทุกอย่าง แต่นี่เป็นเคล็ดลับ ฉันเรียนรู้สิ่งใดแล้ว: อย่ายุ่งกับ App.xaml ... มันกัด
reSPAWNed

1
ฉันต้องลบ obj \ Debug ด้วยตนเอง; RebuildAll ไม่ได้แก้ไขได้ความคิดว่าทำไม ...
เจ Borseth

ปัญหาเดียวกันในแอปพลิเคชัน VS 2017 UWP งานสร้างนี้มีไว้สำหรับPageมากกว่าApplicationDefinition
Paulustrious

2
Build Actionเปลี่ยนเป็นPageเมื่อคุณแยกและรวมไฟล์ App.xaml อีกครั้ง
CSharper

46

บางที "ประเภทผลงาน" ในคุณสมบัติ -> แอปพลิเคชันของโครงการจะต้องเป็น "Class Library" แทนที่จะเป็นแอปพลิเคชันคอนโซลหรือ windows


เมื่อใช้คอมไพเลอร์ CLI ประเภทเอาต์พุตไลบรารีคลาสสามารถระบุได้โดย-t:libraryอาร์กิวเมนต์
Glutexo

21

ในกรณีที่ใครก็ตามมีปัญหาเดียวกัน ... ฉันได้รับข้อผิดพลาดนี้และกลายเป็น<Application.Resources>ไฟล์ App.xaml ของฉัน ฉันมีทรัพยากรนอกแท็กพจนานุกรมทรัพยากรของฉันและนั่นทำให้เกิดข้อผิดพลาดนี้


ฉันมีรูปแบบที่แตกต่างกันเล็กน้อย ฉันมีแอปพลิเคชั่นที่ว่างเปล่าแท็กทรัพยากรและลบแท็กเหล่านั้นออกมาให้ฉัน
YC

6

ในกรณีของฉัน (หลังจากเปลี่ยนชื่อแอปพลิเคชัน namespace ด้วยตนเอง) ฉันต้องเลือกวัตถุเริ่มต้นในคุณสมบัติโครงการ


1

นอกจากนี้คุณยังสามารถเรียกใช้สิ่งนี้หากคุณกำลังทำงานในโครงการ WPF ที่เริ่มต้นใน VS 2010 (Beta 1) จากนั้นย้ายไปที่ VS 2008

ภายใต้คุณสมบัติของโครงการ. NET Framework รุ่นได้รับการยกเลิก (ตั้งแต่. NET 4.0 ไม่ถูกต้องใน VS 2008) และด้วยเหตุผลบางอย่างที่ทำให้เกิดข้อผิดพลาดนี้

หากคุณตั้งค่ากรอบงาน. NET (เช่นเป็น. NET 3.5) ข้อผิดพลาดจะหายไป


1

ในกรณีที่ใครบางคนยังคงได้รับข้อผิดพลาดเดียวกันแม้จะมีความช่วยเหลือทั้งหมดข้างต้น: ฉันมีปัญหานี้ฉันพยายามแก้ไขปัญหาทั้งหมดที่ให้ไว้ที่นี่และฉันเพิ่งพบว่าปัญหาของฉันคือข้อผิดพลาดจริงอีกรายการจากรายการข้อผิดพลาดของฉัน เกี่ยวกับภาพที่หายไปตั้งเป็นหน้าจอเริ่มต้นของฉันฉันเพิ่งเปลี่ยนเส้นทางของมันไปทางขวาหนึ่งแล้วทุกอย่างก็เริ่มทำงาน)


1

ฉันพบข้อผิดพลาดเดียวกัน แต่จากนั้นฉันก็พบว่าฉันพิมพ์ m ตัวเล็กแทนการใช้ M ในวิธี Main


ใช่ลืมว่ามันเป็นกรณี ๆ ไป ขอบคุณ!
Emanuel Vintilă

โปรดดูว่าหาก "คุณสมบัติ" ของแอปพลิเคชันของคุณได้รับการกำหนดโครงการเริ่มต้น / คลาสเริ่มต้นอย่างถูกต้อง stackoverflow.com/questions/9538404
Bimal Poudel


0

อย่างที่ฉันคิดว่า pixparker อยากจะพูด แต่ก็ยังไม่ชัดเจนพอสำหรับฉันอย่างน้อยที่สุดให้แน่ใจว่า ... "โครงการอื่น ๆ " ทั้งหมดมี"ประเภทเอาท์พุท"ของ"Class Library" ที่เลือกในขณะที่ ... เลือก "One Project" เท่านั้นเป็นเอาต์พุต"Window Application"หรือ"Console Application"

โดยการใช้ไซต์ของเรา หมายความว่าคุณได้อ่านและทำความเข้าใจนโยบายคุกกี้และนโยบายความเป็นส่วนตัวของเราแล้ว
Licensed under cc by-sa 3.0 with attribution required.