小编lha*_*han的帖子

外部组件引发的异常

我有一个使用C#的ASP.NET网站,它使用C++方法调用DLLImport.一切都很好,突然我不断收到这个错误:

外部组件引发的异常.描述:执行当前Web请求期间发生未处理的异常.请查看堆栈跟踪以获取有关错误及其源自代码的位置的更多信息.

异常详细信息:System.Runtime.InteropServices.SEHException:外部组件引发了异常.

源错误:在执行当前Web请求期间生成了未处理的异常.可以使用下面的异常堆栈跟踪来识别有关异常的起源和位置的信息.

c# c++ asp.net

8
推荐指数
1
解决办法
3万
查看次数

<script>标记必须包含单独的</ script>标记?

今天我注意到在进行一些测试时,我关闭<script>标签的方式会使我的页面成为或中断.例如,这有效:

<script src="scripts/jquery.js" type="text/javascript"></script>
Run Code Online (Sandbox Code Playgroud)

但这不是:

<script src="scripts/jquery.js" type="text/javascript" />
Run Code Online (Sandbox Code Playgroud)

当我使用IE的开发者工具时,该文件似乎显示出来,但它似乎只是被忽略了.有没有人见过这个或知道它为什么会发生?提前致谢!

javascript scripting jquery src

7
推荐指数
2
解决办法
669
查看次数

为什么2/8888/2016是IE和Firefox中的有效日期?

如果你采取以下措施:

var s = "2/8888/2016";
var d = new Date(s);
alert(d);
Run Code Online (Sandbox Code Playgroud)

在Chrome中,您将获得:

失效日期

但在IE和Firefox中,你会得到:

周五至周五2040 00:00:00 GMT-0500(中部夏令时)

它似乎只是在2月01日加入8888天.相反,我希望该日期被视为无效.有没有办法让FireFox和IE认为这个日期字符串无效?

javascript date

7
推荐指数
1
解决办法
135
查看次数

禁用子文件夹或虚拟目录上的表单身份验证

这是我的场景:

我在IIS(7.5)中设置了一个使用表单身份验证的网站.我在该网站中有一个子文件夹,我将其用作WebDAV共享.我有一个自定义HTTP模块监视我的WebDAV请求,并且还充当自定义身份验证级别.当他们尝试将驱动器映射到我的WebDAV共享时,此自定义身份验证将首先发送HTTP 401 Challenge以获取用户的凭据,然后从Basic-Auth头服务器端解析凭据.问题是只有在关闭表单身份验证时才会发送Basic-Auth标头.

更重要的是,通常当我的HTTP模块找不到Auth Header时,会发送401 Challenge(当Forms Auth关闭时会提示用户输入凭据).但是,打开Forms Auth后,我的HTTP模块仍然会执行并发送401 Challenge,但看起来Forms Auth具有优先权,因此在Fiddler中我可以清楚地看到重定向到:

/Account/Login.aspx?ReturnURL=MySubFolder

自定义身份验证的目的是让我可以在将驱动器映射到WebDAV共享时允许用户登录我的站点.我想捕获他们的网站凭据,对其进行身份验证,然后向他们显示目录的内容.

所以我的问题是:

有没有办法在启用了表单身份验证的网站中的子文件夹或虚拟目录上禁用表单身份验证?

我已经验证我可以通过在我的网站中创建一个新的应用程序并将子文件夹放在那里来解决这个问题,然后在应用程序本身上禁用Forms Auth,但是如果可能的话我真的不想这样做.

我尝试过的所有内容(如下所列)都是由于我的请求将映射驱动器映射到Http://localhost/MySubFolder表单身份验证(至少这是我认为正在发生的事情)并重定向到/login.aspx?ReturnUrl=MySubFolder(如Fiddler所示).

这是我尝试过的:

1)MySubFolder以下位置添加了单独的Web.config :

   <configuration>
     <system.web>
       <authorization>
         <allow users="*"/>
       </authorization>
     </system.web>
   </configuration>
Run Code Online (Sandbox Code Playgroud)

2)<location>在根级Web.config中添加了一个标签,MySubFolder如下所示:

   <location path="MySubFolder">
     <system.web>
       <authorization>
         <allow users="*"/>
       </authorization>
     </system.web>
   </location>
Run Code Online (Sandbox Code Playgroud)

3)考虑更新IIS中的功能委派.

就个人而言,我对上述解决方案有一些疑问,因为根据我的阅读,它们只是允许所有访问,同时仍然启用了表单身份验证.我需要一种方法来实际上在我的子文件夹上禁用表单身份验证.这可能吗?

我还应该注意,我的子文件夹可能是一个虚拟目录,但不需要这样或那样.我只需要在该文件夹上禁用Forms Auth.

根据请求,我的Web.config文件(站点级):

<?xml version="1.0"?>
<configuration>
  <connectionStrings>
    <add name="MyConnString" connectionString="Persist Security Info=True;Initial Catalog=MyDB;Data Source=MyServer;User ID=UserName;Password=xxxxxxxxxx;MultipleActiveResultSets=True;"/>
  </connectionStrings>
  <system.web>
    <compilation debug="true" …
Run Code Online (Sandbox Code Playgroud)

authentication iis forms-authentication

6
推荐指数
1
解决办法
1万
查看次数

使用MVVM绑定ObservableCollection

我正在尝试将应该是一个非常基本的MVVM示例放在一起,但是我无法让它工作.基本上,我想将a绑定ObservableCollection到a ListBox,并为用户提供搜索选项以搜索其他项目.在搜索时,ListBox应该刷新,因为集合将会改变.这是我的代码:

模型:

public class Item
   public string Name { get; set; }
}
Run Code Online (Sandbox Code Playgroud)

视图模型:

public class ViewModel : INotifyPropertyChanged
{
    private ObservableCollection<Item> _items { get; set; }
    public ObservableCollection<Item> Items
    {
        get { return _items; }
        set
        {
            _items = value;
            RaisePropertyChanged("Items");
        }
    }

    public void GetDefaultItems()
    {
        ObservableCollection<Item> temp = new ObservableCollection<Item>();
        temp.Add(new Item() { Name = "abc" + " 1" });
        temp.Add(new Item() { Name = "def" + " 2" });
        temp.Add(new …
Run Code Online (Sandbox Code Playgroud)

c# observablecollection mvvm windows-phone-8

6
推荐指数
1
解决办法
1万
查看次数

带负载均衡器的SignalR v2

我是SignalR的新手,并且经历了一些教程,因为我的任务是升级当前的实现.

我们有一个使用SignalR(版本1.x)的ASP.NET MVC应用程序.该应用程序位于我们的F5负载平衡云环境中.因此,我们使用相同的负载均衡器有多个站点(针对不同的客户).为了使SignalR调用服务器端,我们使用HubConnection来自Microsoft.ASPNET.SignalR.Client命名空间并创建一个这样的代理(此处为完整示例):

var hubConnection = new HubConnection("http://www.contoso.com/");
IHubProxy stockTickerHubProxy = hubConnection.CreateHubProxy("StockTickerHub");
stockTickerHubProxy.On<Stock>("UpdateStockPrice", stock => Console.WriteLine("Stock update for {0} new price {1}", stock.Symbol, stock.Price));
await hubConnection.Start();
Run Code Online (Sandbox Code Playgroud)

http://contoso.com/当前客户的站点URL 在哪里.

我们正在寻求升级到最新的SignalR(版本2.x),我想知道是否有必要使用它HubConnection.即使上面的文章指定版本2,它确实提到:

本文档介绍了在.NET客户端中使用适用于SignalR版本2的Hubs API,例如Windows Store(WinRT),WPF,Silverlight和控制台应用程序.

这是一个带有常规类库后端的Web应用程序,用于数据访问.看一下本教程,我没有看到任何内容HubConnection(它也没有提到负载平衡).从聊天教程中考虑以下内容:

public class ChatHub : Hub
{
    public void Send(string name, string message)
    {
        // Call the addNewMessageToPage method to update clients.
        Clients.All.addNewMessageToPage(name, message);
    }
}
Run Code Online (Sandbox Code Playgroud)

然后,在Statup.cs中:

public class Startup
{
    public void …
Run Code Online (Sandbox Code Playgroud)

asp.net-mvc signalr

6
推荐指数
1
解决办法
1万
查看次数

Java Active Remote Compiler(JARC) - 未绑定异常

最近,我需要对java进行远程编译,所以,我找到了JARC:

http://pointdefence.net/jarc/index.html

因此,我执行运行RMI服务器的shell脚本,但是当我运行shell脚本来编译java客户端时,它会抛出一个异常,例如:

 java.rmi.NotBoundException: jarc.server.JavaCompilerActive1.0
Run Code Online (Sandbox Code Playgroud)

所以,我想在远程服务器上编译一个简单的"hello world"程序,有没有人知道如何实现这一目标?

java rmi

5
推荐指数
1
解决办法
396
查看次数

如何序列化表单字段并将其发送到服务器,jquery?

我有一个表单,HTML其中包含多个相同的名称字段.例如:

  <form action="" method="post" id="form">
    <div class="itemsection" id="item1">
      <input type="text" name="Price" />
      <input type="text" name="Name" />
      <input type="text" name="Catagory" />
    </div>
    <div class="itemsection" id="item2">
      <input type="text" name="Price" />
      <input type="text" name="Product" />
      <input type="text" name="Catagory" />
    </div>
    <div class="itemsection" id="item3">
      <input type="text" name="Price" />
      <input type="text" name="Product" />
      <input type="text" name="Catagory" />
    </div>
  </form>
Run Code Online (Sandbox Code Playgroud)

现在在服务器端(C#),我有一个动作方法和一个模型类Product:

    //Action method accepts the form on server //It require the Product array 
    public ActionResult SaveItem(Product[] products)
    {
         .....
         ...
    }

    //Model …
Run Code Online (Sandbox Code Playgroud)

javascript c# jquery

5
推荐指数
1
解决办法
484
查看次数

如何在Windows Phone 8应用程序中启动新单词docment/excel/power point?

如何在Windows Phone 8应用程序中启动新的Word/Excel/PowerPoint文档?

这是我尝试过的,似乎不起作用:

await Launcher.LaunchUriAsync(new Uri("ms-word:"));
Run Code Online (Sandbox Code Playgroud)

要么

await Launcher.LaunchUriAsync(new Uri("ms-excel:"));
Run Code Online (Sandbox Code Playgroud)

谁能看到我做错了什么?

windows-phone windows-phone-8

5
推荐指数
1
解决办法
319
查看次数

将数据传递到不使用QueryString的其他Web服务器上的URL

我有一个.ashx处理程序,根据处理过程,在完成处理后会重定向到成功或错误页面.处理程序在我的站点中,但成功或错误页面可能不是(这是用户可以配置的).

有没有什么方法可以将错误详细信息传递给错误页面而不将其放在查询字符串中?

我试过了:

  1. 添加包含错误详细信息的自定义标头,但由于我使用的Response.Redirect是标头,标头会被清除
  2. 使用Server.Transfer,而不是Response.Redirect,但这不适用于不在我的网站中的网址

我知道我可以在查询字符串中传递数据,但在某些情况下,我需要传递的数据对于查询字符串来说可能太长了.我还有其他选择吗?

c# response.redirect server.transfer query-string

5
推荐指数
1
解决办法
4190
查看次数