.Net架构编程题

程序设计题



1. 在控制器中实现模糊查询并将结果返回给视图的代码。 (模糊查询用户名为例)

【前端视图代码】

<form action="QueryUsername" method="post">
    用户名:<input type="text" name="username" />
    <input type="submit" value="提交" />
</form>


【前端样式】
文本框输入查询用户名

【后台代码】

public BlogDbContext db = new BlogDbContext();
        // GET: Query
        public ActionResult Index()
        {
            return View();
        }

        public ActionResult QueryUsername(string username)
        {
            var result = from u in db.Users
                         where SqlFunctions.PatIndex("%" + username + "%",u.Username) > 0
                         select u;
            return View(result.ToList());
        }

【返回结果页代码】

@model IEnumerable <MyBlog.Models.User>  //这里是"项目名.Models.实体类名"
<h2>查询结果</h2>
<table>
    <tr>
        <th>ID</th>
        <th>用户名</th>
    </tr>
    @foreach (var item in Model)
    {
        <tr>
            <td>@item.ID</td>
            <td>@item.Username</td>
        </tr>
    }
</table>

【返回结果页视图样式】
这里写图片描述



2.使用JS或者JQuery动态修改页面元素的样式表
此题以动态修改行的背景为例,其他修改样式类似。(JS和JQuery任意选一种)
题目:使用JQuery实现表格隔行变色(黄色)和当前行高亮(红色)显示功能。

【前端代码】

<table id="tb" border="1">
    <tr><td>2011001</td><td>张三</td></tr>
    <tr><td>2011002</td><td>李四</td></tr>
    <tr><td>2011003</td><td>王五</td></tr>
    <tr><td>2011004</td><td>赵六</td></tr>
</table>

【JQuery代码】

<script type="text/javascript" src="~/Scripts/jquery-1.10.2.min.js"></script>
<script type="text/javascript">
    $(document).ready(function () {
        $("#tb tr:even").css("background-color", "yellow");
        var bg;
        $("tr").mouseover(function () {
            bg = $(this).css("background-color");
            $(this).css("background-color","red");
        });
        $("tr").mouseout(function () {
            $(this).css("background-color", bg);
        });
    });
</script>

【前端样式】

鼠标移到第二行
鼠标mouseover

鼠标移开
鼠标mouseout



3.使用Ajax在用户输入的同时同步的校验相关用户名的有效性,并给出相关的提示。

【前端代码】

<div>
    用户名:<input type="text" id="username" /><br />
    <div id="hint"></div>
</div>

【JQuery代码】

<script type="text/javascript" src="~/Scripts/jquery-1.10.2.min.js"></script>

<script type="text/javascript">
    $(document).ready(function () {
        $('#username').keyup(function () {
            $.ajax({
                url: "CheckUsername",
                type: "post",
                data: {
                    username : $('#username').val()
                },
                dataType: 'text',
                success: function (res) {
                    $("#hint").html(res);
                }
            });
        });
    });
</script>

【后台代码】

[HttpPost]
        public string CheckUsername(string username)
        {
            var result = from u in db.Users
                         where u.Username.Equals(username)
                         select u;
            if (result.Count() > 0)
            {
                return "此用户名已存在!";
            }
            else
            {
                return "恭喜你,该用户可以使用!";
            }
        }

【前端显示效果】
输入已存在的用户名
这里写图片描述

输入不存在的用户名
这里写图片描述

### 回答1: 作为一名 .Net 架构师,我认为核心技能包括以下几个方面: 1. 精通 .Net 技术栈,掌握 C#、ASP.NET、Web API、MVC 等相关技术,并能将它们熟练应用于开发工作中。 2. 良好的架构设计能力。在项目开发过程中,架构设计是极为重要的,需要考虑系统的可扩展性、可维护性、性能等方面。 3. 运维能力。架构师需要对开发生命周期的各个阶段都有深刻的理解,因此了解和掌握运维流程对于问题的排查和定位非常有帮助。 4. 沟通能力。架构师需要和项目经理、开发人员以及其他相关人员进行沟通和协作,协调各方面的工作,以确保项目的顺利进行。 5. 抗压能力。架构师通常要负责多个项目或团队,需要在高压力的环境下工作,提供项目支持和解决方案。 在面试过程中,面试官可能会就以上方面进行提问,需要面试者有足够的实践经验和理论知识来回答问题。同时,面试者也可以提出自己的问题来了解岗位的具体工作内容和团队文化。 ### 回答2: .NET架构师是一种重要的角色,负责设计和管理.NET应用程序的结构。在.NET架构师面试中,通常会涉及以下方面: 1. 熟练掌握.NET编程框架,如ASP.NET、WinForms、WPF、ADO.NET等。此外,必须理解C#和VB.NET.NET编程语言的内部工作原理。 2. 熟悉设计模式和架构模式,并能将其应用于.NET应用程序中。架构模式是对于应用程序架构的通用解决方案,例如MVC、MVVM、Layered Architecture和Microservices等。 3. 能够分析和设计大型分布式系统的存储和处理方案。面试者应该熟悉NoSQL数据库,如MongoDB和Cassandra,以及微服务框架,如Service Fabric和Docker。 4. 熟悉.NET Core,并能够使用其构建跨平台应用程序。这包括使用Docker和Kubernetes来构建和扩展.NET Core应用程序。 5. 了解.NET安全模型和身份验证,包括ASP.NET身份验证和授权、SAML、OAuth和OpenID Connect等协议。此外,在.NET应用程序中实现安全最佳实践,例如跨站点脚本(XSS)防护、跨站点请求伪造(CSRF)防护和密码哈希等。 最后,.NET架构师需要具有优秀的沟通和领导能力,能够与其他开发人员和利益相关者沟通,协调团队,确保.NET应用程序的成功开发和交付。 ### 回答3: .net 架构师面试题主要涉及 .net 框架、C#编程语言、web应用程序的设计以及数据库管理等领域。以下是对几个常见问题的回答: 1. .net 框架的特点是什么? .net 框架是一个通用的编程平台,可用于开发用于多种不同应用程序的软件,如桌面应用程序、Web 应用程序以及移动应用程序。它提供了广泛的功能和 API,这些 API 可以用于编写高质量、高性能的 .net 应用程序。 2. C# 语言的重要性如何? C# 是一种强类型、面向对象的编程语言,它是 .net 框架的一部分。开发人员可以使用 C# 来创建各种软件,包括桌面应用程序、Web 应用程序、游戏、移动应用程序等等。在 .net 应用程序开发中,C# 语言非常重要。 3. 设计 web 应用程序的一般步骤是什么? 设计一个 web 应用程序需要完成以下步骤:需求分析、设计应用程序架构、选择合适的开发工具和技术、编写代码、测试和验证、发布和部署应用程序。其中设计应用程序架构是非常重要的,因为它决定了应用程序的性能和扩展性。 4. 如何管理大规模的数据库? 管理大型数据库的关键在于规划、设计和实施数据管理策略。要管理大规模的数据库,需要有一个合理的数据模型、数据架构和索引策略。此外还需要优化查询和数据访问,以提高性能。最后,还需要进行定期的备份和恢复操作,以减少数据丢失的风险。 总之,作为一个 .net 架构师,在掌握这些基本知识的同时,还需要具备团队管理能力、项目管理技能和沟通能力等方面的能力,以便协调开发团队完成项目目标。
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值