如何在MVC.Net中验证模型的最佳方法,我希望接受最小/最大值.
不是字段的单个最小值/最大值.但是单独的字段供用户指定最小值/最大值.
public class FinanceModel{
public int MinimumCost {get;set;}
public int MaximumCost {get;set;}
}
Run Code Online (Sandbox Code Playgroud)
所以我需要确保MinimumCost始终小于最大成本.
我正在寻找一个将浮动显示为货币的DataFormatString.但如果它们不相关(0),则省略小数值.
目前我正在使用:
[DisplayFormat(DataFormatString = "{0:C}")]
Run Code Online (Sandbox Code Playgroud)
在我的模特.这正确显示为货币.我无法在任何地方找到详细说明我需要做出哪些更改来省略小数位?
我正在尝试构建一个 C# 应用程序来检测视频中何时出现音乐。我可以找到任何需要的格式的音频。然而,我在音乐检测方面遇到了障碍。
有大量关于音频指纹识别以及如何用 C#/任何语言执行此操作的帖子。然而,我想要电影中音乐出现的大致进出时间,我不关心音乐是什么。
该音乐不太可能存在于任何指纹数据库中。因此可能是完全计算分析。
有什么巧妙的想法吗?或者我会最好地实现节拍检测算法并逐段处理它。然后估计入点/出点?
我正在使用Azure Media服务来为Web应用程序提取/转码和提供内容.相同的Web应用程序使用Blob存储来存储用户资产.
就目前而言,每当我将新项目摄入AMS时,我都会在blob存储中创建一个带有资产名称的新容器.有没有办法配置AMS使用子容器?我宁愿将媒体资产组织在他们自己的目录中.而不只是坐在我的存储帐户的顶层?
我有一个有趣的情况,我想使用一个类类参数的基类来实现一个接口,并保持DRY继承类.
public interface ICalculator
{
void Process(ICalculationModel calculationModel);
}
public abstract class CalculatorBase<T> :ICalculator where T : ICalculationModel
{
// Compiler moans that Process(ICalculationModel calculationModel) isn't implemented
public abstract void Process(T calculationModel);
}
public class PipeworkInspections : CalculatorBase<GasSafetyModel>
{
public override void Process(GasSafetyModel documentModel){
//snip
}
}
Run Code Online (Sandbox Code Playgroud)
通用的'where'条款或其他什么东西我缺少什么?在我的脑海里,这应该工作.或者编译器是否需要与接口定义完全相同的实现?
我不能轻易地将类型参数移动到ICalculator中,因为有很多地方使用它而不需要通用.
这已经解决了.谢谢(你的)信息.现在显然一个解决方案是使接口采用类型参数.但是ICalculator在很多地方被使用并被引用,就像ICalculator我现在得到编译器错误一样,如果我省略了引用ICalculator的接口中的类型参数......有没有办法设计这应该工作!?
我继承了我的基础"User"类来创建角色特定类型.
例如...
public class Business : User{
public string BusinessName;
}
Run Code Online (Sandbox Code Playgroud)
我为我的View Models做了类似的事情,从一个基本的"UserModel"开始,并继承它以包含特定于角色的功能.
public class BusinessModel : UserModel{
[Required()]
public string BusinessName;
}
Run Code Online (Sandbox Code Playgroud)
当我使用Automapper将更改映射到我的BusinessModel回到我的Business对象时,它不包括对继承字段的任何更改.
//create map between model and business object
Mapper.CreateMap<BusinessModel, Business>();
//load the relevant business
var business = GetCurrentBusiness();
//map the values across
Mapper.Map<BusinessModel, Business>(model, business);
Run Code Online (Sandbox Code Playgroud)
对"业务"中的任何字段的更改都存在.但是,从User继承的字段的任何更改都不会.
Automapper是否无法映射这样的继承类型?或者我错过了什么?
我在c#和TSQL中都有一个Harversine公式的实现.我不确定如何最好在服务器端实现公式,以便我能够在Linq查询中使用它.
理想情况下,我只需将本地公式链接到服务器上的函数.从而避免"没有转换为sql"错误,并使一切都很好,无缝.
显然,对问题的任何看法都是有帮助的.
我知道SQL2008中的Geography类型.然而,我正在反对的代码库已经依赖于Linq to SQL,我希望它比它的价值更多的努力!
谢谢
c# ×7
asp.net-mvc ×3
.net ×2
audio ×1
automapper ×1
formatting ×1
generics ×1
inheritance ×1
linq-to-sql ×1
model ×1
sql-server ×1
t-sql ×1