这是所有的asp.net c#。 我有一个枚举 public enum ControlSelectionType { NotApplicable = 1, SingleSelectRadioButtons = 2, SingleSelectDropDownList = 3, MultiSelectCheckBox = 4, MultiSelectListBox = 5 } 这个数值存储在我的数据库中。 我在一个数据网格中显示这个值。 <asp:boundcolumn datafield="ControlSelectionTypeId" headertext="Control Type"></asp:boundcolumn> ID对于用户来说意味着什么,所以我已经用下面的方法将绑定列更改为模板列。 <asp:TemplateColumn> <ItemTemplate> <%# Enum.Parse(typeof(ControlSelectionType), DataBinder.Eval(Container.DataItem, "ControlSelectionTypeId").ToString()).ToString()%> </ItemTemplate> </asp:TemplateColumn> 这样会好很多…但是,如果有一个简单的函数,我可以放在Enum中,通过Camel case来分割它,以便在datagrid中很好地包装这些单词。 注意:我完全意识到有更好的方法来做这一切。 这个屏幕纯粹是在内部使用,我只是想要一个快速的黑客来显示它好一点。
(这是关于一个模糊问题的问题,我试图提供所有相关数据,希望有人有帮助的信息;对长描述道歉。 我们的networking应用 我们有一个运行在IIS 7.5中的.NET 4 Web应用程序访问Active Directory和一个SQL Server数据库。 通过将应用程序的应用程序池的标识设置为ApplicationPoolIdentity ,该Web应用程序在虚拟“应用程序池标识”下运行。 关于虚拟身份的简要描述可以在StackOverflow的答案和它引用的博客文章中find:应用程序池身份只是一个附加组,它被添加到作为“networking服务”运行的Web应用程序的工作进程中。 然而,有一个消息来源隐约暗示,“networking服务和ApplicationPoolIdentity确实存在IIS.net站点文档不公开的区别”。 所以虚拟身份可能不仅仅是一个额外的团体。 我们select使用ApplicationPoolIdentity而不是NetworkService,因为它已经成为IIS 7.5中的默认设置(参见这里 ),并且按照微软的build议:“这个标识允许pipe理员指定仅与应用程序的身份相关的权限池正在运行,从而增加了服务器的安全性。“ (来自processModel元素,用于为applicationPools添加[IIS 7设置架构] )“应用程序池标识是一个强大的新隔离特性”,它使“运行IIS应用程序更加安全可靠”(来自IIS.net文章“Application Pool Identities” ) 该应用程序使用集成Windows身份validation,但使用<identity impersonate="false"/> ,以便不使用最终用户身份,而使用虚拟应用程序池标识来运行我们的代码。 此应用程序使用System.DirectoryServices类(即ADSI API)查询Active Directory。 在大多数地方,这是在没有指定额外的用户名/密码或其他凭据的情况下完成 此应用程序还使用连接string中的Integrated Security=true连接到SQL Server数据库。 如果数据库是本地的,那么我们看到IIS APPPOOL\OurAppPoolName用于连接到数据库; 如果数据库是远程的,那么使用机器帐户OURDOMAIN\ourwebserver$ 。 我们的问题 我们经常遇到下列其中一种情况,即安装工作开始失败的问题。 当数据库在远程系统上时,数据库连接开始失败:“NT AUTHORITY \ ANONYMOUS LOGON用户login失败”原因:基于令牌的服务器访问validation失败,出现基础结构错误,请检查以前的错误。 以前的错误是“错误:18456,严重性:14,状态:11。 所以现在看来OURDOMAIN\ourwebserver$不再被使用,而是尝试匿名访问。 (我们有轶事证据表明,这个问题是在UACclosures的时候发生的,而且在UAC打开后就消失了,但是请注意,更改UAC需要重新启动……) IIS.net线程中报告了类似的问题“use ApplicationPoolIdentity连接到SQL“ ,具体在一个答复 。 通过ADSI(System.DirectoryServices)的Active Directory操作开始失败,错误为0x8000500C(“未知错误”),0x80072020(“发生操作错误”)或0x200B(“指定的目录服务属性或值不存在”) 。 从Internet Explorerlogin到应用程序开始失败,并出现HTTP […]
我已经看到很多与将DTO映射到域对象有关的问题,但我不觉得他们回答了我的问题。 我以前用过很多方法,有我自己的看法,但是我正在寻找更具体的东西。 情况: 我们有许多域对象。 我们使用CSLA模型,所以我们的域对象可能非常复杂,并且包含他们自己的数据访问。 你不想在电线上传递这些信息。 我们将要编写一些新的服务,以多种格式(.Net,JSON等)返回数据。 为了这个(和其他原因),我们还创build了一个精简的数据传输对象来传递线路。 我的问题是DTO和Domain对象应该如何连接? 我的第一反应是使用Fowler,DTO模式types的解决scheme 。 我已经看过很多次了,这感觉对我来说很合适。 域对象不包含对DTO的引用。 调用外部实体(“映射器”或“汇编器”)以从域对象创buildDTO。 通常在域对象上有一个ORM。 这样做的缺点是,“映射器”往往对于任何实际情况都非常复杂,并且可能非常脆弱。 另一个想法是域对象“包含”DTO,因为它只是一个精益数据对象。 域对象属性将在内部引用DTO属性,如果需要可以返回DTO。 我可以看到没有问题,但感觉不对。 我看过一些使用NHibernate的人似乎使用这种方法的文章。 还有其他的方法吗? 以上方法之一值得使用吗? 如果这样或者没有,为什么? 提前感谢您的任何见解。
我正在使用ASP.NET MVC 4 。 我正试图从一个控制器传递数据到另一个控制器。 我没有得到这个权利。 我不确定这是否可能? 以下是我想要传递数据的源操作方法: public class ServerController : Controller { [HttpPost] public ActionResult ApplicationPoolsUpdate(ServiceViewModel viewModel) { XDocument updatedResultsDocument = myService.UpdateApplicationPools(); // Redirect to ApplicationPool controller and pass // updatedResultsDocument to be used in UpdateConfirmation action method } } 我需要将其传递给此控制器中的此操作方法: public class ApplicationPoolController : Controller { public ActionResult UpdateConfirmation(XDocument xDocument) { // […]
这一个有我难住,我有一个强types的看法,有这个循环来生成单选button: <% foreach (QuestionAnswer qa in Model.QuestionAnswers) { %> <%= Html.RadioButtonFor(model => model.QuestionAnswers[(int)qa.QuestionID – 1].AnswerValue, "Checked" ) %> <%= Html.Encode(qa.OptionValue) %> <% } %> 它渲染得很好,但由于名称不一样,所以可以select多个单选button。 我如何分组,所以只能select1个单选button? 任何帮助,将不胜感激!
我添加了一个现有的ASP.Net Web应用程序项目到我的解决scheme。 除了标准的debugging和发布configuration之外,该解决scheme还具有两种自定义configuration,SAT和UAT。 对于新的Web应用程序,右键单击Web.Config将显示上下文菜单,但“添加configuration变换”选项将变灰。 我不知所措 新项目是一个Web应用程序。 configurationpipe理器不显示这个项目的两个自定义configuration,但它为其他项目。 该项目似乎在解决scheme文件中有正确的条目。 思考?
我有一个DataTable 5列和10行。 现在我想添加一个新的列到DataTable,我想分配DropDownList值到新的列。 所以DropDownList值应该被添加10次到新的列。 这个怎么做? 注意:不使用FOR LOOP。 例如:我的现有DataTable是这样的。 ID Value —– ——- 1 100 2 150 现在我想添加一个新的“CourseID”到这个DataTable。 我有一个DropDownList。 它的select值是1.所以我现有的表格应该如下所示: ID Value CourseID —– —— ———- 1 100 1 2 150 1 这个怎么做?
我正在与ASP.NET Web Api玩弄,我很好奇的返回一个图像与2个参数(x和yresize)的最佳方式。 例如 ~/api/image12345/200/200 将返回200×200 JPG / PNG /或GIF 我应该返回一个System.Drawing.Image对象或手动定义HTTPReponseMessage.Content? 哪种方式是最高效的,开销较低。
这里有一个很好的问题: 如何将Web API添加到现有的ASP.NET MVC 4 Web应用程序项目中? 不幸的是,这是不足以解决我的问题。 我已经试了两次,以确保我没有做错任何事情。 我右键单击“控制器”,添加项目“Web API 2控制器与动作,使用entity framework”,我select我的模型类和数据库上下文。 一切都很好…但仍然…每次我试图访问/ api /rest我得到一个404错误(我的控制器的名字是RestController)。
我有一个模型类,像这样的属性: [Display(Name = "Phone", Description="Hello World!")] public string Phone1 { get; set; } 在我的视图中显示一个标签并渲染一个文本框是非常简单的: @Html.LabelFor(model => model.Organization.Phone1) @Html.EditorFor(model => model.Organization.Phone1) @Html.ValidationMessageFor(model => model.Organization.Phone1) 但是,如何呈现Description注释属性的值,即“Hello World!”?