Tag: asp.net mvc 4

如何使用Razor语法获取ASP.NET MVC 4中文本中URL的链接?

我有一个带文本字段的模型。 该文本可以包含多个URL。 它不必包含URL,也没有特定的格式。 运用 @Html.DisplayFor(model => model.TextWithSomeUrls) 当然,文本和URL显示为普通文本。 我想将URL显示为工作单个链接。 在ASP.NET / Razor中是否有一个帮助方法? 编辑 :现在输出是: http://www.google.com, foo: bar; http://www.yahoo.com 这正是文本字段的内容。 但是我希望获取URL,并且只将URL呈现为如下链接: http://www.google.com, foo: bar; http://www.yahoo.com 我的解决方案 public static partial class HtmlExtensions { private const string urlRegEx = @”((http|ftp|https):\/\/[\w\-_]+(\.[\w\-_]+)+([\w\-\.,@?^=%&:/~\+#]*[\w\-\@?^=%&/~\+#])?)”; public static MvcHtmlString DisplayWithLinksFor(this HtmlHelper htmlHelper, Expression<Func> expression) { string content = GetContent(htmlHelper, expression); string result = ReplaceUrlsWithLinks(content); […]

在ASP.Net MVC中路由之前的数据库选择

我正在寻找asp.net mvc 4中的一种方法,在任何路由发生之前从web.config中选择数据库设置,比如在codeigniter(php)中预先路由挂钩。 保存那些设置会话或上下文对象的最佳方法是什么? PS我是asp.net mvc的新手。 像这里提到的php代码: 在每个路由运行之前运行数据库查询

将多个属性的组validation消息一起组成一个消息asp.net mvc

我有一个视图模型,其中包含某人出生日期的年/月/日属性。 所有这些字段都是必需的。 现在,如果有人在出生日期没有输入任何内容,则会收到3条单独的错误消息。 我想要做的是以某种方式将这些错误消息组合成一条消息,该消息只是说“出生日期是必需的”。 因此,如果这些字段中的一个或多个是空白的,它们将始终只获得1个validation消息。 我需要通过jqueryvalidation和不引人注意的validation来处理客户端validation。 我知道通过查看这个问题可以使用jquery validate插件。 但是我不知道如何使用我的模型上的validation属性和不显眼的validation来实现asp.net mvc。 希望有一些内置的方法可以将属性分组以进行validation,但如果没有,可以使用自定义validation属性吗? 这是我现有的模型和视图的样子: 该模型: public class MyModel { [Required(ErrorMessage = “Year is required”)] public int Year { get; set; } [Required(ErrorMessage = “Month is required”)] public int Month { get; set; } [Required(ErrorMessage = “Day is required”)] public int Day { get; set; } } 风景: […]

如何调用返回引用游标的Oracle存储过程

我试图调用返回引用游标的Oracle存储过程,我需要从返回的数据生成树视图。 我是新手,我有两个问题。 第一个问题是我无法调用该程序。 我收到此错误:“调用’OBJECT_HIERARCHY’时参数的数量或类型错误” 我的第二个问题是,我不明白当这个过程返回一个引用游标值时,我将如何获取该数据? 该表中有超过5000条记录,我没有得到那些数据,而是一个引用游标值。 有人可以解释我如何使用ref游标值获取该数据。 我没有使用Oracle的经验。 这是oracle中的过程定义: CREATE OR REPLACE PROCEDURE SAD.object_hierarchy (nAppId IN NUMBER, nParentId IN NUMBER DEFAULT -1, o_cRefCursor OUT SYS_REFCURSOR) IS BEGIN IF NOT o_cRefCursor%ISOPEN THEN OPEN o_cRefCursor FOR SELECT h.PARENT_ID, h.CHILD_ID, h.H_LEVEL, o.OBJECT_IDENTIFIER, o.OBJECT_TYPE_ID FROM ( SELECT PARENT_ID, CHILD_ID, LEVEL AS H_LEVEL FROM OBJECT_RELATIONSHIPS START WITH PARENT_ID = nParentId […]

如何返回false,如何创建将重定向到Login的自定义属性,类似于Authorize属性 – ASP.NET MVC

我尝试使用谷歌搜索关于自定义属性的一些东西,但我仍然不确定如何去做…. 一旦用户登录,我就会在会话cookie(ex UserID)中存储用户的一些重要细节..而我想要做的就是创建一个属性,如果 if (Session[“UserID”] == null) 然后它会像[Authorize]属性一样重定向到登录。 这样我就可以在各个控制器级别应用此属性。 我应该覆盖Authorize属性吗? 创建一个新的? 如何让它重定向到登录? 我也在使用ASP.NET MVC 4 谢谢你的帮助

安装文件的位置 – Program Files(x86)\ Reference Assemblies \ Microsoft \ Framework \ .NETFramework \ v4.5

请耐心等待我,我会尽可能清楚地解释。 我创建了一个新项目(类库),其目标是4.5而不是客户端配置文件4.5。 我添加了一个引用“System.Runtime.Serialization”,属性表明它位于“C:\ Program Files(x86)\ Reference Assemblies \ Microsoft \ Framework.NETFramework \ v4.5 \ System.Runtime.Serialization.dll”的位置 在我的电脑上,使用msbuild编译构建脚本可以很好地编译。 在使用团队城市的构建服务器上 – 它抱怨 错误CS0012:类型’System.Object’在未引用的程序集中定义。 您必须添加对程序集’System.Runtime,Version = 4.0.0.0,Culture = neutral,PublicKeyToken = b03f5f7f11d50a3a’的引用 buildserver安装了完整的.net框架 – “dotnetfx45_full_x86_x64.exe” 唯一一次构建的是我将我的“C:\ Program Files(x86)\ Reference Assemblies \ Microsoft \ Framework.NETFramework \ v4.5”版本复制到目标机器上。 我已经使用此链接进行了检查并安装了.net 4.5 – http://myspworld.wordpress.com/2012/10/18/how-to-check-if-net-4-5-is-installed-on-a -服务器/ 我问两个问题:1。如何安装? 2.如果它确实在这个位置找到它肯定应该在GAC中查找? 将不胜感激任何帮助。

如何在ASP.NET MVC 4 Razor项目中显示集合?

我有以下型号: public class ContractPlain { public int Id { get; set; } public Guid ContractGuid { get; set; } public int SenderId { get; set; } public int RecvId { get; set; } public int ContractType { get; set; } public string ContractStatus { get; set; } public DateTime CreatedTime { get; set; } public […]

ASP.NET MVC /entity framework错误 – 无效的列名称’Environment_Id’

我是ASP.NET MVC和EF的新手,希望这不是一个愚蠢的问题 当我传递模型来查看我收到此错误 – exception详细信息:System.Data.SqlClient.SqlException:无效的列名称’Environment_Id’。 模型或数据库表具有该名称的属性。 可以指导我吗? **Here is the Version Model Class** public partial class Version { public Version() { this.ProfileVersions = new List(); this.ServerInfoes = new List(); } public int Id { get; set; } public string Number { get; set; } public string Tag { get; set; } public string Owner { […]

MVC 4 Simple Populate DropDown来自数据库模型

我觉得有点傻。 我试图获得一个MVC 4,使用拳击作为一个function的例子。 我在数据库( Heavyweights等)和Boxers WeightCategories有WeightCategories 。 似乎很简单。 关系是一个拳击手有一个当前的重量类别,但是当我编辑时,我希望它能够通过下拉来改变它。 如果它是我在代码中自己制作的列表,我理解如何做到这一点,但是我有理解如何从WeightCategory表“加载”列表并在拳击手的视图/模型中显示它。 所以,这是我的WeightCategory项的代码: [Table(“WeightCategories”)] public class WeightCategory { [Key] public int WeightCategoryId { get; set; } public WEIGHT_CATEGORIES WeightCategoryType { get; set; } [Display(Name = “Weight Category Name”)] [Required] [MinLength(5)] public string Name { get; set; } [Display(Name = “Weight Limit In Pounds”)] public int? WeightLimit { […]

AuthenticationResult.IsSuccessful开始为谷歌返回false

今天,在我的实际网站上没有任何更改,使用Google外部登录提供程序登录停止了工作。 这只发生在有谷歌登录的用户,其他提供商都没问题。 这也只发生在实时网站上,我的dev机器运行相同代码的调试版本就可以了。 我的代码类似于示例MVC应用程序: public ActionResult ExternalLoginCallback( string returnUrl ) { … AuthenticationResult result = OAuthWebSecurity.VerifyAuthentication( Url.Action( “ExternalLoginCallback”, new { ReturnUrl = returnUrl } ) ); if( !result.IsSuccessful ) { return RedirectToAction( “ExternalLoginFailure” ); } } 我看了一下空的result.error。 有什么变化我需要注意吗? 我可以在1月4日看到类似的问题。 我想这与我的实现有关,而不是谷歌范围的问题,因为我仍然可以登录使用我的谷歌开放ID的SO。 我正在使用Log4Net并接收DotNetOpenAuth日志,但是没有错误,所以它与此答案不同。 我尝试从4.3.0.13117升级到最新的Nuget(4.3.4.13329),但这没有效果。 我似乎也无法在存储库中找到4.3.4.13329源代码的标记。 我将尝试下载并构建4.3.0.13117以查看是否可以找到原因。 唯一的问题是,这可以在我的本地计算机上进行良好的测试,我不确定我是否想在现场网站上安装调试DLL。