好的,所以我们当前正在使用OpenExeConfiguration来读取配置文件,但是在Web上下文中运行时这不起作用.
我尝试了各种不同的方式以编程方式打开web.config但我似乎无法让它读取正确的web.config文件.如果重要,我目前正在VS 2008中进行调试.
1. config = System.Web.Configuration.WebConfigurationManager.OpenWebConfiguration(System.Web.HttpContext.Current.Request.ApplicationPath);
2. config = ConfigurationManager.OpenMappedExeConfiguration(new ExeConfigurationFileMap { ExeConfigFilename = "web.config" }, ConfigurationUserLevel.None);
3. config = System.Web.Configuration.WebConfigurationManager.OpenWebConfiguration("~");
4. config = System.Web.Configuration.WebConfigurationManager.OpenWebConfiguration(null);
5. System.Web.Configuration.WebConfigurationManager.OpenWebConfiguration(System.Web.Hosting.HostingEnvironment.ApplicationVirtualPath);
Run Code Online (Sandbox Code Playgroud)
它要么打开错误的配置文件(机器配置,或VS /IDE/Web.config)或抱怨错误:
{System.Configuration.ConfigurationErrorsException:加载配置文件时出错:无法映射路径'/'.---> System.InvalidOperationException:无法映射路径'/'.
编辑 - 确定如此组合
config = System.Web.Configuration.WebConfigurationManager.OpenWebConfiguration("~");
Run Code Online (Sandbox Code Playgroud)
并运行Visual Studio 2008作为管理员工作.我们希望在部署到我们的Web服务器/客户端环境时不会遇到安全/权限问题!
好的 - 所以我正在使用一个使用自定义日期选择器控件的系统(我知道还有其他的...但为了一致性,我想了解为什么我的当前问题正在发生并修复它).
因此,带有文本框和Page_PreRender的自定义用户控件执行此操作:
protected void Page_PreRender(object sender, EventArgs e)
{
string clientScript = @"
$(function(){
$('#" + this.Date1.ClientID + @"').datepicker({dateFormat: 'dd/mm/yy', constrainInput: true});
});";
Page.ClientScript.RegisterStartupScript(this.GetType(), this.ClientID, clientScript, true);
//Type t = this.GetType();
//if (!Page.ClientScript.IsStartupScriptRegistered(t, this.ClientID))
//{
// Page.ClientScript.RegisterStartupScript(t, this.ClientID, clientScript, true);
//}
}
Run Code Online (Sandbox Code Playgroud)
忽略注释掉的东西 - 那是我尝试不同的东西 - 没有帮助.
我的问题是,当我加载页面时,这一切都正常.但是如果我从下拉列表中选择一些导致页面回发的内容 - 当我点击我的日期字段时它们就会停止工作.就像我应该能够点击进入文本框一样,会出现一个漂亮的日历控件.但在回发后,没有出现漂亮的日历控件!
它目前全部包含在(在托管页面中)更新面板中.所以我评论了更新面板的东西,日期在页面回发后工作.所以它似乎与该更新面板有关.
有什么建议吗?
谢谢!!
好的,所以我阅读了一大堆文章,建议表值函数和交叉应用提供比标量udf更好的性能.我想以两种方式编写我的函数,然后测试哪一个更好 - 但我无法弄清楚我应该使用/寻找什么是更好的选择.
我正在使用SQL Server 2005.我已经尝试在数据库引擎优化顾问中运行估计的执行计划,实际执行计划和分析查询,我不知道它试图告诉我什么.
使用showplan_all打开/关闭它看起来像基于表的函数将使用更多的CPU 1.157e-06与8.3e-05,但表函数的总子树成本为0.000830157对比0.01983356.
表值函数的查询成本似乎也比标量函数具有更高的成本.即使我认为它应该是更好的选择.
因此,虽然我想自己证明哪一个提供了更好的性能 - 我只是不确定在这些工具中寻找什么 - 所以任何建议都将受到赞赏!
我需要根据日历日期获得学年值(基于数据库中设置的日期范围),因此函数内容低于 - 所以它只是我是基于标量还是基于表.今年提供给其他查询..
CREATE FUNCTION fn_AcademicYear
(
-- Add the parameters for the function here
@StartDate DateTime
)
RETURNS
@AcademicYear TABLE
(
AcademicYear int
)
AS
BEGIN
DECLARE @YearOffset int, @AcademicStartDate DateTime
-- Lookup Academic Year Starting Date
SELECT @AcademicStartDate = CONVERT(DateTime,[Value])
FROM dbo.SystemSetting
WHERE [Key] = 'AcademicYear.StartDate'
SET @YearOffset = DATEPART(YYYY,@StartDate) - DATEPART(YYYY,@AcademicStartDate);
-- try setting academic looking start date to year of the date …Run Code Online (Sandbox Code Playgroud) 我有一个事件的编辑页面,我的一个字段是一个日期.在某些浏览器中,它看起来像纯文本框(IE8),但在chrome中它显示"dd/mm/yyyy",如果你点击它,它有一些额外的选项来设置日期.
我的问题是在编辑页面上它没有填充现有日期(我想因为它的格式不正确?).MVC控制器以"2014-03-08T00:00:00"格式返回数据(仅使用基本的CRUD控制器操作).
<form name="form" class="form-horizontal">
<div class="control-group" ng-class="{error: form.EventDate.$invalid}">
<label class="control-label" for="EventDate">Event Date</label>
<div class="controls">
<input type="date" ng-model="item.EventDate" id="EventDate">
</div>
</div>
<div class="form-actions">
<button ng-click="save()" class="btn btn-primary">
{{action}}
</button>
<a href="#/" class="btn">Cancel</a>
</div>
</form>
Run Code Online (Sandbox Code Playgroud)
我看过很多关于使用指令和手表的帖子,但这看起来很复杂.我原本以为会有一种相对简单的方法来格式化模型数据,以便以正确的格式显示并按预期工作.我不介意Chrome是否提供与其他浏览器不同的体验 - 它只是一个简单的内部用户网站.我只是不喜欢它在编辑记录时没有预先填写日期.
这可能是非常简单的事情.
我有一个绑定到对象数据源的下拉列表.我已将AppendDataBoundItems设置为true,以便我可以进行初始选择.
<asp:DropDownList ID="Accommodations1" runat="server" AutoPostBack="true" DataTextField="AccommodationTypeDescription" DataValueField="Id" OnDataBound="Accommodations1_DataBound" onSelectedIndexChanged="Accommodations1_SelectedIndexChanged" Width="200px" DataSourceID="AccommodationDs" AppendDataBoundItems="true">
<asp:ListItem Text="Select" Value=""></asp:ListItem>
</asp:DropDownList>
<asp:ObjectDataSource ID="AccommodationDs" runat="server" OldValuesParameterFormatString="original_{0}" SelectMethod="ListByPropertyId" TypeName="PropertyAccommodationController">
<SelectParameters>
<asp:Parameter Name="PropertyId" Type="Int32" />
</SelectParameters>
</asp:ObjectDataSource>
Run Code Online (Sandbox Code Playgroud)
我有一个按钮,增加了一个容纳 - 所以在那之后我需要下拉列表更新以包括新的住宿.所以我尝试在下拉列表中调用databind,并在数据源上调用databind - 并且没有任何东西使这个下拉列表更新.
例如.PropertyAccommodations1.DataBind();
有人可以让我知道我做错了什么.最初我认为这是由于更新面板问题..但我已经删除了更新面板,它仍然无法工作(并检查主页面不包括更新面板).
谢谢!!
OK have just started getting this error and I'm not sure why. I have a hosting page which has listview and a panel with a usercontrol. The listview loads up records with a linkbutton. You click the link button to edit that particular record - which gets loaded up in the formview (within the usercontrol) which goes to edit mode. After an update occurs in the formview I'm triggering an event which my hosting page is listening for. The hosting …
在开始从.NET MVC webclient调用Rally REST Web服务之后获得了一些帮助.
我在这里获得了网络服务信息:
https://rally1.rallydev.com/slm/doc/webservice/
所以我可以看到我可以使用URL来访问Rally中的信息 - 类似于:
https://rally1.rallydev.com/slm/webservice/1.39/task?query=((Owner.Name
= owner@blah.com.au) and (State != Completed))&order=Rank&fetch=true&stylesheet=/slm/doc/webservice/browser.xsl
Run Code Online (Sandbox Code Playgroud)
但是,我不清楚的是如何在提出请求之前进行身份验证?
我是REST Web服务的新手(已经完成了SOAP/WSDL) - 所以它似乎不像REST那样你应该添加对某些内容的引用来创建客户端类?它是否正确?您只需使用URI创建HTTPRequest - 并进行调用,获取HTTPResponse(我希望可以使用它).
很多例子似乎都有特定的服务/ api类,他们正在调用方法或访问属性 - 所以我不确定是不是因为他们使用SOAP而不是REST - 或者他们自己创建它们.
也许我正在查看错误的文档,因为它似乎假设您知道如何进行身份验证.或者我错过了参考?
我正在使用MVC5和Razor视图.我的viewmodel有一个类型为nullable enum的属性.我让它可以为空,这样当用户加载页面时,他们必须选择一个选项,并在他们没有选择任何内容时进行验证.
public class PaymentViewModel
{
[Required(ErrorMessage = "Please select a payment method", AllowEmptyStrings = false)]
public PaymentType? SelectedPaymentType { get; set; }
}
public enum PaymentType
{
CreditCard,
DirectDebit
}
Run Code Online (Sandbox Code Playgroud)
在我看来,我有一个表单,我正在调用提交,然后调用控制器操作作为帖子.
我的观点的相关部分如下所示:
<div class="row button-group" data-toggle="buttons">
<div class="col-xs-6">
<label class="btn btn-tertiary">
@Html.RadioButtonFor(model => model.SelectedPaymentType, PaymentType.CreditCard, new {@Name = "payment-method", @Value = "credit", @Id="rdoCredit"})
Credit Card
</label>
</div>
<div class="col-xs-6">
<label class="btn btn-tertiary">
@Html.RadioButtonFor(model => model.SelectedPaymentType, PaymentType.DirectDebit, new {@Name = "payment-method", @Value = "debit", @Id="rdoDebit"})
Direct Debit
</label>
</div>
</div> …Run Code Online (Sandbox Code Playgroud) 所以我对WCF并不过分熟悉,而且我用Google搜索的所有内容都没有帮助我如何实现我的需求.对不起,如果这是一个愚蠢的问题:)
基本上有一个服务器应用程序,其中包含使用WCF(net tcp绑定)公开的服务.我写了一个新的控制台应用程序,我需要调用该服务.所以我可以通过为我们拥有的代理项目添加一个dll并添加一堆配置文件(例如WCFClientBindings,WCFClientEndPoints)来实现这一点.如果我使用定义的终点,那么我可以调用这样的代码:
using (var partyProxy = new PartyControllerProxy())
{
// execute server method
partyProfile = partyProxy.GetLatestPartyProfile(context, parsedParameters.PartyId);
}
Run Code Online (Sandbox Code Playgroud)
但是应用程序应该能够调用作为命令行参数传入的主机名.
因此,虽然我的应用程序使用定义的端点:
<client>
<endpoint
name="IPartyControllerEndpoint"
address="net.tcp://localhost:46000/ServiceInterface/PartyController.svc"
binding="customBinding" bindingConfiguration="DefaultNetTcpBindingConfiguration"
contract="CompanyA.Service.Product.Core.Contracts.IPartyController"
behaviorConfiguration="DefaultEndpointBehavior">
</endpoint>
</client>
Run Code Online (Sandbox Code Playgroud)
我需要能够将localhost主机名更新为其他东西.我希望安全不会让我失望:)
我见过的例子似乎是通过传递"动态"绑定和地址来实例化客户端/代理,但我们的代理类不接受这些.在调用"代理"类之前,有没有办法更新端点的地址(在运行时)?我见过的唯一其他例子涉及实例化一个新的ServiceHost - 但这对客户来说听起来不太合适:)
谢谢!
编辑 -好的,这里的语法似乎很好用.这与我接受的答案有点不同,但这种方法是要走的路:)
using (ChannelFactory<IPartyController> factory = new ChannelFactory<IPartyController>("IPartyControllerEndpoint"))
{
EndpointAddress address = new EndpointAddress(String.Format("net.tcp://{0}/ServiceInterface/PartyController.svc", parsedParameters.HostName));
IPartyController channel = factory.CreateChannel(address);
partyProfile = channel.GetLatestPartyProfile(context, parsedParameters.PartyId);
((IClientChannel)channel).Close();
}
Run Code Online (Sandbox Code Playgroud) 我正在尝试清理数据库表,我真的想删掉两列,因为它们应该不再被使用.
'Property' table
- Unable to modify table.
The index '_dta_index_Property_7_669245439__K1_K9_K8_K24_K4_2_5_6_13_22_25_26_29' is dependent on column 'AveragePriceMta'.
The index '_dta_index_Property_7_669245439__K1_K9_K8_K24_2_4_5_6_7_13_22_25_26_29' is dependent on column 'AveragePriceMta'.
ALTER TABLE DROP COLUMN AveragePriceMta failed because one or more objects access this column.
Run Code Online (Sandbox Code Playgroud)
我已经去看了这个表的索引,在"包含的列"的灰色字段中找到了我要删除的特定列.显然我不想删除这些索引 - 但有没有办法刷新索引,以便我可以从不可编辑的包含列字段中删除有问题的列?
使用SQL Server 2008但数据库是2005 ..如果重要的话.
谢谢你的帮助!:)
好的,所以我对正则表达式有一个心理障碍 - 但我被告知想出一个满足这些条件的正则表达式:
(?=^.{8,255}$)((?=.*\d)(?=.*[A-Z])(?=.*[a-z])|(?=.*\d)(?=.*[^A-Za-z0-9\s])(?=.*[a-z])|(?=.*[^A-Za-z0-9\s])(?=.*[A-Z])(?=.*[a-z])|(?=.*\d)(?=.*[A-Z])(?=.*[^A-Za-z0-9\s]))
Run Code Online (Sandbox Code Playgroud)
这个正则表达式满足1和2.但我很难找到3和4的例子.
如果任何正则表达式爱好者可以帮助我 - 我将不胜感激.:)
注意:我不想使用正则表达式 - 这是我问任何人是否可以使用正则表达式检查第3和第4个条件?请不要因为相信正则表达式是唯一的解决方案而向我投票.我不相信 - 我们的achitect决定使用正则表达式来解决这个问题的努力最少.
我个人认为这种级别的密码安全性会使系统无法使用!但也许我对密码安全性不够关心:)
注意:我们正在尝试使用Microsoft ASPNET Membership - regex表达式.这就是为什么我认为它需要是一个表达式.我觉得尝试阅读/理解是可怕的.
如果任何人都可以提供单独的正则表达式 - 必须至少有5个不同的字符 - 不能有相同字符类型的长序列(例如,asdnme会被认为是坏的,因为它是一个长序列的小写) - 假设5序列是太长..
还是c#code/javascript?虽然这是特定于一个特定客户端 - 我们不希望它被空白应用于所有客户端.这可能就是为什么架构师需要一个很好的正则表达式,你可以在部署时插入.:(
找到了其他适用于.NET的示例
^(([AZ])?|([AZ])|?(\ d)|?([^ A-ZA-Z\d]))(*()\ 1 {2}?!). {8}((上)((下)((数字)|????((非字母数字)|()))|?!((数字)((非字母数字)?|?!())| ))(?!)|(?(下)((数字?)((非字母数字)|?()?!)|)(?!)|?!()))$
不幸的是它符合以下条件:
最小长度必须为8个字符
必须包含以下四种类型中的三种的字符:
英文大写字母(A - Z)
英文小写字母(a - z)
数字(0 - 9)
非字母数字字符
连续3次或多次不能重复任何字符,例如BB(字母B两次)可以,但BBB(字母B 3次)不正常.
但它没有检测到至少使用了5个不同的字符:(
没关系 - 下面的答案似乎有效.唯一的事情是它似乎允许4个不同的字符,而不是需要5个?
我把它调整为:^(?=.{8,})(?:(?=.\ d)(?=. [AZ])(?=.[az])|(?=.\d )(?=.[^ A-Za-z0-9\s])(?=. [az])|(?=.[^ A-Za-z0-9\s])(?=. [AZ ])(?=.[az])|(?=.\d)(?=.[AZ])(?=. [^ …
c# ×3
.net ×1
angularjs ×1
asp.net ×1
asp.net-3.5 ×1
asp.net-mvc ×1
c#-3.0 ×1
events ×1
listview ×1
rally ×1
regex ×1
rest ×1
sql ×1
sql-server ×1
t-sql ×1
updatepanel ×1
viewstate ×1
wcf ×1
wcf-binding ×1