小编Sun*_*nov的帖子

IIS 7.0/Windows 2008上的NAntContrib/NAnt mkiisdir失败

我正在尝试使用NAnt/NAntContrib构建脚本在Windows 2008(IIS 7.0)上构建Web应用程序.

在构建文件中,有mkiisdir任务,它失败了:

[mkiisdir]'localhost'的web服务不存在或无法访问.

到目前为止我找到的所有文件/帖子(非w2k8,只有Vista)说安装IIS 6兼容性服务(所有这些,包括脚本工具等)所以我做了,但它仍然抛出这个错误.

知道还有什么需要改变,所以NAnt能够在IIS 7.0上创建/删除虚拟目录吗?

编辑:新数据 - 当我以本地管理员身份登录到此服务器时,nant任务成功,但是当我以域管理员身份登录时失败.我在本地Administrators组中添加了域管理员组,但它仍然失败.知道我需要检查/更改哪些其他权限才能让我的域管理员用户能够执行此任务?我可以手动创建虚拟文件夹,没有任何问题.

nant permissions iis-7

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

如何在多个表中强制使用唯一身份验证

我在MySQL服务器中有以下表:

Companies:
- UID (unique)
- NAME
- other relevant data

Offices:
- UID (unique)
- CompanyID
- ExternalID
- other data

Employees:
- UID (unique)
- OfficeID
- ExternalID
- other data
Run Code Online (Sandbox Code Playgroud)

在每一个中,UID是由数据库创建的唯一标识符.

有外键可以确保UID上Employee - > Office - > Company之间的链接.

办公室和员工中的ExternalID字段是公司(我的客户实际)提供给我的应用程序的ID.客户端没有(也不关心)我自己的ID,我的应用程序从它们收到的所有数据都是根据它们的ID(即我的表中的ExternalID)来识别的.

即客户端使用伪语言的请求就像"我是公司X,更新我的员工Y的数据".

我需要对CompanyID和Employees.ExternalID的组合强制执行唯一性,因此在我的数据库中,同一公司的员工不会有重复的ExternalID.

我在考虑3种可能的解决方案:

  1. 更改Employees的架构以包含CompanyID,并在两个字段上创建唯一约束.

  2. 强制执行触发器,在Employees中更新/插入时验证唯一性.

  3. 强制检查应用程序级别(即我的接收服务).

我的替代方案 - dbadmin-in-me sais(3)是最糟糕的解决方案,因为它不会在应用程序错误或其他情况下保护数据库不一致,并且很可能是最慢的.

触发器解决方案可能是我想要的,但它可能会变得复杂,特别是如果需要在单个语句中执行多个插入/更新,并且我不确定性能与(1).

并且(1)看起来是最快速和最简单的方法,但有点违背我对关系模型的理解.

SO DB专家对每种方法的利弊有何看法,特别是如果有可能增加额外的间接水平 - 即公司 - >办公室 - >部门 - >员工,同样的独特性需要保留(公司职员).

mysql sql database database-design data-modeling

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

正确命名C#的枚举值

你怎么看,拥有这样一个枚举是一个好主意:

enum AvailableSpace {
   Percent10,
   Percent20,
   SqF500,
   SqF600
}
Run Code Online (Sandbox Code Playgroud)

问题是关于值名称的语义,即百分比和平方英尺.我真的相信这不是一个好主意,但我无法找到和指导等支持这一点.

编辑:这将用于确定实体的状态 - 即作为描述对象状态的只读属性.如果我们知道总空间(即对象本身知道它),我们可以选择在内部进行转换,因此我们要么只有百分比,要么是平方英尺,要么两者都有.争论的焦点是,"两者"并不是一个好主意.

以上是一个例子,但真正的问题是一些数据提供者向我们发送总数(sq.f.)和其他百分比,我的目标是统一用户界面.我可以自由地进行一些近似,因此将根据我们想要提供信息的准确度来调整确切的值.

问题只是关于值名称的语义,而不是内容 - 即,如果将百分比放在(潜在的)int枚举中是个好主意.

c# enums naming

3
推荐指数
2
解决办法
2144
查看次数

从 ASMX Web 服务设置 HTTP 响应状态代码

我知道 ASP.NET 有一个全局处理程序 Application_EndRequest 处理程序,我可以在其中更改 Context.Response.StatusCode,并将其设置为 200,这是我的愿望。

现在有了 asmx Web 服务,我不太确定应该把这个逻辑放在哪里。我知道我绝对对编写 ISAPI 过滤器不感兴趣,而且我并没有真正在 ASP.NET 环境中运行,所以 HTTPModule可能对我来说也没什么用。

有什么建议。在 WCF 中运行它会为我提供一种在 Web 服务上设置它的更简单的机制吗?

.net web-services http-status-codes

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

DirectoryEntry.NativeObject为Windows 2008中的Administrators组中的用户抛出拒绝访问

我有一个本地用户,它是Administrators本地组的成员.

当我运行此代码时:

using System;
using System.DirectoryServices;

namespace nanttest
{
    class Program
    {
        public static void Main(string[] args)
        {
            using(DirectoryEntry entry = new DirectoryEntry("IIS://localhost/W3SVC"))
            {
                object absobject = entry.NativeObject;
                Console.WriteLine("Name: {0}", entry.Name);
            }

            Console.Write("Press any key to continue . . . ");
            Console.ReadKey(true);
        }
    }
}
Run Code Online (Sandbox Code Playgroud)

我收到:

未处理的异常:System.Runtime.InteropServices.COMException(0x80070005):访问被拒绝.

在System.DirectoryServices.DirectoryEntry.Bind(Boolean throwIfFail)中的System.DirectoryServices.DirectoryEntry.Bind()at System.DirectoryServices.DirectoryEntry.get_NativeObject()at nanttest.Program.Main(String [] args)in c:\ Work \nanttest \nanttest\Program.cs:第20行

如果我以管理员身份登录时运行此代码,则可以正常工作.

此外,如果我以DomainAdmin用户身份登录,则此代码将失败.我已将MYDOMAIN\DomainAdmins和MYDOMAIN\mydomainuser添加为本地Administrators组的成员.

我应该为这些用户添加哪些其他权限,以便他们可以运行此代码.

.net permissions directoryservices administrator windows-server-2008

2
推荐指数
1
解决办法
6317
查看次数

保留原始参数的ASP.NET 404(页面未找到)重定向

我正在用一个具有不同结构的新Web应用程序替换旧的Web应用程序.

我无法更改新应用程序的虚拟目录路径,因为我的用户已经为旧应用程序添加了不同链接的书签.

假设我有一位拥有此书签的用户:

HTTP://server/webapp/oldpage.aspx数据= somedata

我的新应用程序将驻留在同一个虚拟目录中,替换旧的应用程序,但它不再是oldpage.aspx,而是具有不同的布局,但它仍然需要来自旧URL的参数.

所以,我已经设置将404错误重定向到redirectfrombookmark.aspx,在那里我决定如何处理请求.

问题是,我收到的唯一参数是"aspxerrorpath =/webapp/oldpage.aspx",而不是"data"参数,我需要它来正确处理请求.

知道如何在404处理程序中获取完整的"原始"URL吗?

编辑:阅读答案,看起来我没有提出足够明确的问题:

  1. 用户已经为许多不同的页面(oldpage1,oldpage2等)添加了书签,我应该平等地处理它们.
  2. 每个旧页面的参数几乎相同,我只需要一个特定的参数.
  3. 我想重新使用"新"应用程序的"旧"虚拟目录名称.
  4. 搜索机器人等不是一个问题,这是带有动态内容的内部应用程序,它经常过期.

问题是 - 我可以这样做,而不是在我的"新"应用程序中使用旧名称创建一堆空页面,并在其OnLoad中创建Request.Redirect.即可以使用404机制或Global.asax中的某些事件处理等来完成.

asp.net error-handling redirect http-status-code-404

2
推荐指数
1
解决办法
5919
查看次数

如何在Lotus Domino中为不同的数据库设置不同的Web身份验证模式

免责声明:我不是Notes管理员,我只是编写了应用程序:),并尝试帮助我们的客户使用它.

我们提供一个简单的数据库,其中包含一个代理,用于接受和处理来自Internet的HTTP POST消

将要安装此数据库的Domino服务器配置为用于Web访问的单点登录身份验证.

有没有办法只设置我们的数据库使用不同类型的身份验证 - 即基本身份验证,所以我们可以像这样命令POST消息给代理:

HTTP://用户名:password@my.domino.server/mydb.nsf/myagent

我还想到了另一种方法 - 删除任何形式的auth,并在POSTed数据中传递凭据.然后,代理将注意处理或不处理数据,基于信用是否正常.但这很可能需要某种形式的"冒充" - 即以某种方式将匿名用户映射到具有执行代理权限的用户.所以,我对这个问题的有效答案可能是一个建议如何设置它.

此外 - 我们正在研究Web服务方法(在Domino 7.0+中可用),但它需要对双方进行更改 - 发件人(我们的发布者服务)和接收代理.并且很可能会回到关于如何验证发件人的原始问题.

任何有关这方面的建议(甚至改变方法)都将受到高度赞赏.

干杯

authentication basic-authentication web-access lotus-domino

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

如何在Ruby中实现RESTful服务

出于教育和原型设计的目的,我想学习如何在Ruby中实现简单的RESTful服务,而不使用像RoR这样的大型框架.

我在RoR中发现了很多例子,或者如何实现自助服务的SOAP服务,我找不到类似的REST.

你能提供这些例子的链接吗?或者,如果它比我想象的更复杂(看看SOAP4R),为什么会有任何解释?

或者,当我刚开始深入研究Ruby时,设置Web应用程序(不同于RoR)的基础是什么 - 即服务器绑定,应用程序服务器部件等.

谢谢

ruby rest web-services

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