这两天在构建Asp.net Mvc项目中,允许用户上传一个图片来当做自己的头像。

Html代码

<form method="post" enctype="multipart/form-data" action="/Home/UpLoadFile" >

      <input type="file" id=”uploadfile” />

      <input type="submit" value=”save” />

</Form>

Controller端代码

 [HttpPost]
 public ActionResult UpLoadFile( HttpPostedFileBase file)
{
     return View();
}
奇怪的是哪个File永远是个Null,急死人了,一天的时间浪费了!!!
查阅无数网站,英文不好也要逼着自己搜英文网站,搞了大半天,在一个英文网站上看到一句:
上传文件控件必须要有name值,而且在Controller端的HttpPostedFileBase file中的file必需就是Upload控件的name值。
晕!!倒!!!
加上试试吧,代码如下

<form method="post" enctype="multipart/form-data" action="/Home/UpLoadFile" >

    <input type="file" id=”uploadfile” name=”file” />

    <input type="submit" value=”save” />

</Form>

Controller端的代码就不写了,和上面是一样的。
经过跟踪,File再也不是Null。
写此文以备忘!!!
posted @ 2010-08-15 00:56 秃顶的大熊猫 阅读(1091) 评论(5) 编辑
       在最近开发的项目中,应用了Html.LabelFor(TModel)来生成<lable/>标签,同时配合Html.TextBoxFor(TModel)来生成<Input/>标签,效果不错,生成的Html标签
效果如下:
<label for="UserName">标签内容</label>
<input id="UserName" name="UserName" type="text" value="" />
问题产生了:
<Lable>标签内容</Lable>准备实现多国语言版本,使用的是Resources文件。但是,Html.LabelFor()方法只支持Model的DisplayName属性:
public class User
{
    [DisplayName="标签内容"]
    public string DisplayName { get; set; }
    public string SortName { get; set; }
}
问题是DisplayName属性不支持国际化,无法调用Resource中的资源字符串!(此处省略n万字,尝试各种解决方法,就不在此描述了,总之是不成功) 那就换个解决方案吧: <%:Html.Label(Resources.User.Info_State_Header) %> 国际化的问题解决了,但是那个优雅的<label for=”UserName”>属性无法实现了!难道鱼与熊掌不能兼得吗?郁闷啊! 强大的Asp.net Mvc 框架不是吹牛皮吹出来的,上家伙 自定义HtmlHelper方法,直接上代码,大家都是高手,我就不解释了:
namespace System.Web.Mvc
{
    public static class myHtmlHelper
    {
        /// <summary>
        /// 自定义HtmlHelper Label方法,解决for属性和国际化字符串不能同时解决的问题
         /// </summary>
        /// <typeparam name="TModel"></typeparam>
        /// <typeparam name="TValue"></typeparam>
        /// <param name="?"></param>
        /// <param name="expression"></param>
        /// <param name="DisplayName">要在Label标签中显示的本地化字符串</param>
        /// <returns></returns>
        public static MvcHtmlString Label<TModel, TValue>(this HtmlHelper<TModel> htmlHelper, Expression<Func<TModel, TValue>> expression, string DisplayName)
        {
            string modelName = ExpressionHelper.GetExpressionText(expression);
            TagBuilder tagBuilder = new TagBuilder("label");
            tagBuilder.Attributes.Add("for",modelName);
            tagBuilder.InnerHtml = DisplayName;
            return MvcHtmlString.Create(tagBuilder.ToString(TagRenderMode.Normal));
        }
    }
}
啊,问题消失了,继续干活吧,前面的道路还很长呢
posted @ 2010-07-31 11:56 秃顶的大熊猫 阅读(393) 评论(0) 编辑

SharePoint是一个非常好的平台系统,在国内的应用还是不尽如人意。什么原因造成的这种情况呢?

大家网络上在网络上百度Google一下,看到的文章90%以上是开发方面的。而这90%的开发文章中,几乎都是针对每一个小问题,例如Webpart等。

其实,真正的让一个应用系统能够很好的推广开来,一个真实的应用介绍是最好的。

但是国内这方面的书籍和网上的文章基本上是一片空白。英文书籍倒是有一本不错的Real World SharePoint2007,可惜国内一直看不到哪怕是一个章节的译文。像我这样只认识26个字母的人就是只能望书兴叹了。

哈哈,坐而言不如起而行!这个系列文章其实是写给自己看的,当然了,也欢迎大家拍砖。当然有鼓掌送鲜花的本人也可以笑纳。

闲话少说,书归正传!

本人所在公司是一家服装公司,基本上是按照事业部形式进行管理,所以上组织架构基本上按照如下排列:

董事长

总经理

   总经理1

   总经理2

   ……

   总经理N(这么多总经理是为了管理不同的方向,哈哈,是BOSS定的,不是我说的)

XXX事业部

   设计室

      小组1

      ……

      小组N

   企划部

      小组1

      ……

      小组N

   销售部

      小组1

      ……

      小组N

 

基本上的组织架构就是这样了,当然还有更复杂一些的,但是,这里表述的基本上就够用了。可以按照这样的组织结构来划分了。

下面就是对sharepoint系统的规划要求了:

1.公司肯定需要一个主页来承载各项内容。

2.各品牌事业部和其他和事业部平级的单位,也需要一个自己的部门主页来发布通知,部门文档,项目进度,时间规划等内容。

3.各事业部下面的小部门需要自己的平台,就是协同工作平台。

用Sharepoint2010来进行设计规划。大家觉得应该如何来进行总体的规划呢?

大家都说说吧,集思广益,我就算偷各位的师了!(偷着乐)

呵呵,不知道博客园有没有项目管理平台呢,大家都来建设一下,也算是开源的一种吧?

作者注:

想来想去,觉得还是把这个系列的文章标题改变一下吧,“实务”好像有些虚,改成这个标题吧!

另外预告一下下一章的内容

企业组织架构与活动目录域(ActiveDirectory)

posted @ 2010-03-13 17:51 秃顶的大熊猫 阅读(489) 评论(5) 编辑

Asp.Net Mvc 应用程序如何应对不同的URL地址?????,问题解决了

在上一篇博文中,本人碰到了实际应用中的一些问题

可能是我问的问题有些弱智,害的高手们为了这个低智商的问题伤透了脑筋。还有位老大,不屑一顾的说不知道我要干什么!!!

其实在实际工作中,我想上文中描述的场景应该还是存在的。至少我现在就遇到了这个问题。

也可能是我在上一篇文章中没有把问题描述清楚,我其实是想寻找一种Asp.net Mvc 框架结构中的解决方案。

因为IIS服务器是一台,现在公司还没有能力添置更多的服务器,而且域名是在不同的时期申请的,领导要求将不同的域名绑定到一个Controller上。

各位高手给出的答案为3种:URL转发,二级域名CNAME,URL rewriter(Http Module) 。但是这些我都不熟,从头来浪费时间了。

绞尽脑汁思索解决方案,既然没有现成的,就自己啃吧!

在Google,Bing中按照URL,Asp.net Mvc等关键词搜啊搜,一篇一篇的看。

看着看着,突然脑海里闪出一丝光亮,解决方案有了。

解决方案:

将所有域名全部指向承载Asp.net Mvc应用程序的IIS服务器,这样用任何域名访问都是访问同样的一套Asp.net Mvc应用程序了。

在Asp.net Mvc应用程序的路由规则中定义:

    AControllers(A子公司)

    BControllers(B子公司)

    CControllers(C子公司)

    DControllers(D子公司)

    HomeControllers(总公司)

这样就满足了最开始的系统要求,然后在路由规则的最后一条创建一条默认的规则,所有的URL都最先满足这一条,然后在这条规则的Action方法中如下操作:

string url=this.HttpContext.Request.Url.ToString();
if (url.Contains("www.A.com"))
{
    return RedirectToAction("Index", "A");
}
else
{
    return RedirectToAction("Index", "Home");
}

当然这只是简单的演示,下一步还要从外部文件,例如Xml文件中读取转向规则,然后进行转向。

哈哈,应该思路还算是正确的吧!

posted @ 2009-07-03 18:07 秃顶的大熊猫 阅读(107) 评论(0) 编辑

Asp.Net Mvc 应用程序如何应对不同的URL地址?????

本人是个新手,各方面都是个新手。Asp.net Mvc 更是个新手,在实际工作中遇到了一些问题,抖胆将问题放在首页上,希望能等到一个好的回复。

本人正在使用Asp.net Mvc技术架构公司的网站。其他的问题暂时还没有出现,就是碰到了一个URL和Asp.net Mvc应用程序之间的对接问题。

公司为集团公司,下属4个子公司:

网站结构规划:

总公司

     子公司A

     子公司B

     子公司C

     子公司D

Asp.net MVC应用程序框架如下(Controllers目录下)

    AControllers(A子公司)

    BControllers(B子公司)

    CControllers(C子公司)

    DControllers(D子公司)

    HomeControllers(总公司)

各公司的首页URL形式为

http://www.myUrl.com/index     总公司首页

http://www.myUrl.com/A/index    A子公司首页

http://www.myUrl.com/B/index    B子公司首页

http://www.myUrl.com/C/index    C子公司首页

http://www.myUrl.com/D/index    D子公司首页

其他的各级页面也都以此类推。

现在的问题是,我每个公司都有自己的域名。总公司为http://www.myurl.com,各个子公司分别为http://www.A.com,http://www.B.com,http://www.C.com,http://www.D.com

领导要求从http://www.A.com访问的就是http://www.myUrl.com/A/index    A子公司首页。

如何实现呢,Google了一天也没找到答案!!!

扔个砖头吧,盼望能有个老赵那样的高手砸给咱一块玉。O(∩_∩)O~

posted @ 2009-07-02 13:56 秃顶的大熊猫 阅读(305) 评论(7) 编辑
摘要: 为ASP.NET MVC配置基于Active Directory的表单认证方式 最近一直在研究基于Active Directory的表单认证方式,同时也在关注ASP.NET MVC的情况,同时也在应用ASP.NET MVC,帮公司建设网站就运用了asp.net MVC的架构。 将来公司网站的后台肯定是实在Asp.net Mvc架构的了,如何使用基于Active Directory的表单认证方式...阅读全文
posted @ 2009-06-29 11:26 秃顶的大熊猫 阅读(448) 评论(1) 编辑
摘要: 上一篇说道:开始学习MOSS2007,先拿单点登录SSO开刀,说干就干 从网上找了几篇关于MOSS单点登录的文章,列于下面聊作备忘: MOSS2007 实现单点登陆 MOSS 2007 应用随笔(14)-- 实现SSO单点登陆 http://thorprojects.com/blog/archive/2008/08/02/moss-single-sign-on-setup-step-by-step...阅读全文
posted @ 2009-02-10 11:46 秃顶的大熊猫 阅读(935) 评论(8) 编辑
摘要: 在上一篇文档中,描述了公司协同工作平台中遇到的问题,主要是无法和公司已有的活动目录域(active directory domain)进行用户账号的集成。到现在该软件供应商还没有给出相应的解决方案!头疼啊!想办法解决吧! MOSS2007中有一个单点登录的功能,正好本人也想系统的学习一下MOSS2007,练习,实验,解决问题一勺烩了,不成也就是教学费了。 感觉上完成这个命题,需要如下几个步骤: 1...阅读全文
posted @ 2009-02-06 10:12 秃顶的大熊猫 阅读(689) 评论(2) 编辑
摘要: 在公司今年的IT项目中,协同办公平台项目是一个重点。 在项目的选型过程中,我就一直很强调“不管选择那家的平台,一定要和Windows 活动目录域集成”。因为公司已经部署了Windows活动目录域,依据公司的组织架构建立了OU,用户组,创建了用户。有这样的资源不用,简直是暴殄天物呀!!! 选来选去,最后剩了两家,一家是使用SharePoint技术的公司,一家使用的底层技术为JAVA也是平台化产品的公...阅读全文
posted @ 2008-12-31 11:20 秃顶的大熊猫 阅读(2336) 评论(20) 编辑
摘要: 刚才想整理一下文章,不知道怎么搞的,一下子就没了,从新帖。在一个项目当中,使用了asp.net ajaxToolkit中的TAB控件。现在TAB中做布局,内容等等,没发现问题。开始处理逻辑了,问题来了:原来设想让一个按钮弹出ModalPopup控件,在其中让用户填写一些东西。因为想让这个ModalPopup控件服用,想在弹出之前,在其中修改一些东西。HTML控件没问题,服务器端控件就不行了。诧异呀...阅读全文
posted @ 2008-07-31 10:02 秃顶的大熊猫 阅读(1164) 评论(1) 编辑
摘要: 在一项目中,欲使用ASP.NET AJAX Control Toolkit中的Accordion控件。效果如下:哈哈,眼熟吧,用的是Matt大牛的东西,这老哥的美工和程序结合的简直太完美了!!!!Matt大牛的原文套用了Matt大牛的的css文件和图像文件,开工了!麻烦来了,Matt大牛原文的数据结构,标题是硬编码的,列表项用的是ListView绑定Obj数据源。可我的项目要求,标题和列表项均从数...阅读全文
posted @ 2008-06-23 16:42 秃顶的大熊猫 阅读(2367) 评论(9) 编辑
摘要: 前一段时间在微软TechNet上看了一个SQLSERVER2005数据库的一个教程,里面都是一些牛人讲的关于SQLSERVER2005的方方面面,非常不错。坐下来听吧,讲的真不错。帮助很大。 有一节是讲高可用性数据库镜像的,单位的SQLserver数据库正好准备优化并且领导提出要一个高可用性的方案,正好对路唉,原来准备用异地群集的,咨询了一些朋友,异地群集的成本非常高昂。正好看看这个“数据库镜像”...阅读全文
posted @ 2007-08-29 11:38 秃顶的大熊猫 阅读(1958) 评论(5) 编辑
摘要: 可爱吗,这就是我的动力阅读全文
posted @ 2007-08-21 11:19 秃顶的大熊猫 阅读(90) 评论(0) 编辑
摘要: 呜呜,长草了,我的博客长草了,高的都快没过我的脑袋了!!! 唉,赖自己,谁让你不回来勤于打扫呢! 自从2月份喜得贵子,在喜得贵子之前又被人家炒了鱿鱼!!!啊,没有生活来源了,心里这个郁闷啊!!! 没办法,先伺候月子吧.在这抽空的时间,又把自己充充电,把吃饭的家伙搞了一下,小小的MCSE。岁数大了,本来想考MCSD,但是想想从体力上肯定拼不过那些年轻人。还是先干好网管,混碗饭吃就可以了。好赖,网管还...阅读全文
posted @ 2007-08-20 17:37 秃顶的大熊猫 阅读(53) 评论(0) 编辑
摘要: 前一段使用了AjaxControlToolKit中的ValidatorCallout控件.使用当中感觉极其不爽!!!首先,它这个控件只适用于Asp.net的服务器端校验控件,而服务器端校验控件只能对TextBox控件进行校验,<Input>控件无法使用.最让我无法忍受的是,其中的客户端自定义校验,无法在异步调用Webservice后的回调函数中,无法设置校验状态.造成Validator...阅读全文
posted @ 2006-11-23 21:52 秃顶的大熊猫 阅读(1584) 评论(6) 编辑
摘要: 前一段时间,在学习使用<Ajaxtoolkit:ValidatorCalloutExtender>的过程当中,对这个控件的感觉是又爱又恨!!! 爱的是,它的错误提示功能真的很眩,在浏览器上这样的效果那绝对是震撼的. 恨的是,它的数据校验功能是绑定在Asp.net的服务器端校验控件上的,感觉有点像脱了裤子放屁,多费一道手. 而asp.net服务器端的客户端验证控件是最让人不能接受的,本来...阅读全文
posted @ 2006-11-11 17:17 秃顶的大熊猫 阅读(162) 评论(0) 编辑
摘要: 写在前面的话: 本人在前一段的ASP.NET AJAX的学习中,本想使用一个<ajaxToolkit:ValidatorCalloutExtender >,但是折腾了几天,发现不能够使用,当然原因很多. 我最需要的一个功能是使用异步WEBSERVICE来检验一个输入的内容在数据库中,是否已经存在.就是这么一个功能使我使用<ajaxToolkit:ValidatorCallou...阅读全文
posted @ 2006-11-06 16:10 秃顶的大熊猫 阅读(300) 评论(1) 编辑
摘要: 刚刚写了一篇关于创建ASP.net Ajax extender随笔,提交了半天都没有动静,手一抖,窗口关了,文章没了,气死我了,我哭,我哭,我哇哇的哭!!! 唉,郁闷!阅读全文
posted @ 2006-11-06 14:44 秃顶的大熊猫 阅读(104) 评论(0) 编辑
摘要: 原本想在项目中使用<ajaxToolkit:ValidatorCalloutExtender >,但是几天折腾下来,才发项:这个控件就像鸡肋一样,让你又爱又恨.爱他,是因为它挂着一个Ajax的名头,显示的效果也还可以.恨它,是因为它底下踩着一个ASP.NET的服务器控件,验证控件.就像我在前边的随笔中写的,它只能绑在ASP.net验证控件上使用.可是ASP.net的服务器端验证控件又显...阅读全文
posted @ 2006-10-30 12:12 秃顶的大熊猫 阅读(212) 评论(0) 编辑
摘要: 有一个公司的小项目,尝试着用Atlas进行修改,完成了80%,哈哈,微软又把Atlas改成了asp.net ajax,得,一切又要从头再来。看到了新的asp.net ajax toolkit中的ValidatorCalloutExtender控件的效果,酷极了,尝试应用,学习吗,就要不断地挑战自己!!!果不其然,碰到问题了!<divclass="linelist"><labeli...阅读全文
posted @ 2006-10-28 23:42 秃顶的大熊猫 阅读(2579) 评论(6) 编辑