2015-07-28 30 views
8

Tôi gặp sự cố với ứng dụng Xamarin.Forms mới được tạo trong Visual Studio 2015. Tôi đã thêm dự án Droid/iOS vào giải pháp và cung cấp cho tôi một lỗi build nói ...Loại hoặc không gian tên 'Ứng dụng' không tồn tại trong không gian tên hiện tại

The type or namespace 'App' does not exist in the current namespace

Dưới đây là một ví dụ về nơi hai lỗi này.

dự án Droid:

namespace MyApp.Droid 
{ 
    [Activity (Label = "MyApp", Icon = "@drawable/icon", MainLauncher = true, ConfigurationChanges = ConfigChanges.ScreenSize | ConfigChanges.Orientation)] 
    public class MainActivity : global::Xamarin.Forms.Platform.Android.FormsApplicationActivity 
    { 
     protected override void OnCreate (Bundle bundle) 
     { 
      base.OnCreate (bundle); 

      global::Xamarin.Forms.Forms.Init (this, bundle); 
       LoadApplication (new MyApp.App()); 
       //Error on the above line at MyApp.App() 
      } 
     } 
} 

dự án iOS:

namespace MyApp.iOS 
{ 
    [Register("AppDelegate")] 
    public partial class AppDelegate : global::Xamarin.Forms.Platform.iOS.FormsApplicationDelegate 
    { 
     public override bool FinishedLaunching(UIApplication app, NSDictionary options) 
     { 
      global::Xamarin.Forms.Forms.Init(); 
      LoadApplication (new MyApp.App()); 
      //Error on above line in MyApp.App() 
      return base.FinishedLaunching (app, options); 
     } 
    } 
} 

Giải pháp này đã được chỉ cần thực hiện và không mã hóa được thực hiện chưa, điều này có thể là một vấn đề với VS2015?

+0

hai dự án nền tảng của bạn có tham chiếu đến dự án Biểu mẫu PCL được chia sẻ không? Đó là nơi lớp App tồn tại theo mặc định. – Jason

Trả lời

13

Đây là vấn đề vẫn còn tồn tại. Mặc dù đây có thể không phải là giải pháp hồi tháng 7 nhưng đây là giải pháp làm việc cho ngày 31/3/2016.

  • sạch giải pháp
  • Xây dựng PCL
  • Tháo tham khảo PCL từ dự án bị ảnh hưởng (s)
  • lại thêm tài liệu tham khảo PCL
  • Xây dựng

này cũng đôi khi xảy ra sau khi mở tệp XAML và chuyển trở lại tệp C# trong dự án PCL.

+2

Tôi có thể xác nhận rằng cách giải quyết được mô tả đang hoạt động tại thời điểm viết bài. –

+1

Vẫn còn trong trường hợp VS2017. Vẫn là một giải pháp làm việc. Cảm ơn bạn. – Augure

+2

Không hoạt động: ( – Eru

0

Bạn cần tham chiếu dự án Biểu mẫu PCL, nó sẽ thực hiện theo mặc định khi bạn tạo dự án trừ khi bạn tạo từng dự án riêng lẻ. Chỉ cần nhấp chuột phải vào dự án MyApp.Droid -> Thêm tham khảo -> Giải pháp -> Kiểm tra MyApp (?!?!)

2

Câu trả lời của @silencedmessage đã giúp tôi.

Mặc dù tôi muốn thêm rằng tôi nhận thấy rằng tất cả các dự án Xamarin của tôi thậm chí không có tham chiếu PCL để bắt đầu. Tôi bắt đầu với một mẫu dự án Xamarin Forms XAML trống cho tất cả các mục tiêu có thể và tôi thậm chí không bận tâm kiểm tra tham chiếu đến PCL, trước khi tôi đọc câu trả lời này.

Câu chuyện dài quá ngắn: Ngay cả từ mẫu chính thức trống, bạn vẫn nên kiểm tra xem tham chiếu PCL có được thêm vào tất cả các dự án hay không. Thứ kỳ lạ.

+1

Tôi cũng thấy điều này là đúng. Sử dụng Bản cập nhật doanh nghiệp VS 2015 2 – mgoodric

Các vấn đề liên quan