Asp.net mvc Silverlight主机应用程序仅显示加载图像

Asp.net mvc Silverlight主机应用程序仅显示加载图像,asp.net-mvc,silverlight,Asp.net Mvc,Silverlight,我试图同时使用Silverlight和MVC。创建了一个简单的Silverlight应用程序后,我尝试使用MVC主机应用程序(使用提供的aspx和html页面)查看它。问题是,当我查看页面时,我看到的只是加载的图像(100%的值),仅此而已。它从不显示我的应用程序 以下是aspx页面的html: <form id="form1" runat="server" style="height:100%"> <div id="silverlightControlHost">

我试图同时使用Silverlight和MVC。创建了一个简单的Silverlight应用程序后,我尝试使用MVC主机应用程序(使用提供的aspx和html页面)查看它。问题是,当我查看页面时,我看到的只是加载的图像(100%的值),仅此而已。它从不显示我的应用程序

以下是aspx页面的html:

<form id="form1" runat="server" style="height:100%">
    <div id="silverlightControlHost">
        <object data="data:application/x-silverlight-2," type="application/x-silverlight-2" width="100%" height="100%">
          <param name="source" value="ClientBin/MVCSilverlight.xap"/>
          <param name="onError" value="onSilverlightError" />
          <param name="background" value="white" />
          <param name="minRuntimeVersion" value="3.0.40818.0" />
          <param name="autoUpgrade" value="true" />
          <a href="http://go.microsoft.com/fwlink/?LinkID=149156&v=3.0.40818.0" style="text-decoration:none">
              <img src="http://go.microsoft.com/fwlink/?LinkId=161376" alt="Get Microsoft Silverlight" style="border-style:none"/>
          </a>
        </object><iframe id="_sl_historyFrame" style="visibility:hidden;height:0px;width:0px;border:0px"></iframe></div>
    </form>

下面是应用程序的xaml:

<UserControl x:Class="MVCSilverlight.MainPage"
    xmlns="http://schemas.microsoft.com/winfx/2006/xaml/presentation"
    xmlns:x="http://schemas.microsoft.com/winfx/2006/xaml"
    xmlns:d="http://schemas.microsoft.com/expression/blend/2008"
    xmlns:mc="http://schemas.openxmlformats.org/markup-compatibility/2006"
    xmlns:navigation="clr-namespace:System.Windows.Controls;assembly=System.Windows.Controls.Navigation"
    xmlns:uriMapper="clr-namespace:System.Windows.Navigation;assembly=System.Windows.Controls.Navigation"
    mc:Ignorable="d"
    d:DesignHeight="500" d:DesignWidth="500">

    <Canvas x:Name="LayoutRoot" Background="Crimson">        
        <TextBlock Text="Hello World" ></TextBlock>
    </Canvas>
</UserControl>


应用程序中的所有其他内容都是标准代码(创建项目时生成的代码)。以前有人见过这个问题吗?有什么我遗漏的吗?我对这两种技术都很陌生,任何信息都非常有用。

运行应用程序时,请检查VS是否已连接到浏览器进程以进行Silverlight调试(而不是脚本)

还要检查您的App.xaml.cs是否包含:-

    private void Application_Startup(object sender, StartupEventArgs e)
    {
        this.RootVisual = new MainPage();
    } 
加载启动屏幕将保持在原位,同时
RootVisual
保持未设置。因此,要么代码没有设置它,要么发生了错误(出于某种原因,您没有收到错误警报),因此代码永远不会到达
RootVisual
的赋值


另外,您还可以使用一个名为的免费HTTP调试工具来跟踪所有实际的HTTP对话,也许由于某种原因,xap根本没有被下载。事实上,这可能是我的猜测,MVC路由可能在“ClientBin/MVCSilverlight.xap”上做了一些不希望做的事情。

当您运行应用程序时,请检查VS是否已连接到浏览器进程以进行Silverlight调试(而不是脚本)

还要检查您的App.xaml.cs是否包含:-

    private void Application_Startup(object sender, StartupEventArgs e)
    {
        this.RootVisual = new MainPage();
    } 
加载启动屏幕将保持在原位,同时
RootVisual
保持未设置。因此,要么代码没有设置它,要么发生了错误(出于某种原因,您没有收到错误警报),因此代码永远不会到达
RootVisual
的赋值


另外,您还可以使用一个名为的免费HTTP调试工具来跟踪所有实际的HTTP对话,也许由于某种原因,xap根本没有被下载。事实上,我猜MVC路由可能在“ClientBin/MVCSilverlight.xap”中做了一些不受欢迎的事情。

你是对的,它没有下载。问题在于我创建的一些样式应用程序找不到(我最初在FireFox中测试,它没有抛出错误,必须转到IE)。实际上,应用程序没有找到我放在application.Resources(uri映射和样式)中的任何内容。您是对的,它没有下载。问题在于我创建的一些样式应用程序找不到(我最初在FireFox中测试,它没有抛出错误,必须转到IE)。实际上,应用程序没有找到我放在application.Resources(uri映射和样式)中的任何内容。