WP8 - RateMyApp“插件”异常

时间:2014-01-30 23:42:29

标签: c# windows-phone-8 visual-studio-2013 stack-trace inner-exception

我发现诺基亚的这个好插件,https://github.com/nokia-developer/rate-my-app

我按照他们的指南在我的应用中实施,可以在此处下载https://github.com/nokia-developer/rate-my-app/blob/master/Doc/RateMyAppGuide.pdf?raw=true

在该指南中没有什么困难,顺便说一下,我只需要在我的项目中安装插件并添加2行代码,

xmlns:rma="clr-namespace:RateMyApp.Controls;assembly=RateMyApp"

<rma:FeedbackOverlay x:Name="FeedbackOverlay" Grid.RowSpan="2" FeedbackTo="me@test.com" ApplicationName="MyApp" CompanyName="MyCompany"/>

我实际上做的一切都没有遇到任何问题。当我尝试编辑rma:FeedbackOverlay对象的XAML代码时,“GUI”窗口(XAML项目附近的窗口)抛出此异常:

InvalidOperationException: The property "FeedbackOverlay.Message" does not expose a get method.
InnerException: None
(there is also a StackTrace that I am not able to read, but I can provide it if anyone can read that for me)

我尝试在我的设备上部署应用程序,它实际运行正常,使扩展按照预期工作。然而,我担心这个例外。我有理由吗?我怎么解决这个问题?提前谢谢!

(是的,我尝试重新启动电脑,重新启动IDE,没有任何效果)

1 个答案:

答案 0 :(得分:3)

我检查了this addon的代码。如果您在那里打开FeedbackOverlay.xaml.cs,您会发现Message属性缺少get访问器:

public string Message
{
   // get { //something } - is not here
   set
   {
      // some code
   }
}

但在这种情况下(由于此属性仅用于定义消息 - 不能获取它),因此不需要get访问器。因此,您获得的异常可能仅来自Visual Studio,并且如果您尝试获取Message的值,则会通知可能存在问题。
因此,除非您尝试获取Message的值 - 例如:

string myMessage = FeedbackOverlay.Message;

应该没有问题(VS也应该在上面标记此代码)。如果您尝试在xaml中获取此值(例如使用Binding),也可能会出现问题。

我还认为,如果您告知开发人员(您可能很容易在Github上或项目中的某个地方找到他的电子邮件),那么您会遇到这样的问题会很好。

希望这有帮助。