09 Nov 2011

AutoGenerateColumns='true'的GridView如何支持htmlencode/htmldecode

我们知道BoundField.HtmlEncode 属性可以设置一个单元格是否能够htmlencode,我今天碰到的问题是:自动生成列的GridView,表头可能是包含html的比如<font color=red>邮件</font>,默认被htmlencode了,而我不希望这样做,所以有了如下的代码:

 

/// <summary>
/// Handles the PreRender event of the gvSource control.
/// </summary>
/// <param name=“sender”>The source of the event.</param>
/// <param name=“e”>The <see cref=“System.EventArgs”/> instance containing the event data.</param>
protected void gvSource_PreRender( object sender , EventArgs e )
{
    GridView gridView = sender as GridView;
    if ( gridView != null && gridView.HeaderRow != null && gridView.HeaderRow.Cells != null )
    {
        for ( int j = 0 ; j < gridView.HeaderRow.Cells.Count ; j++ )
        {
            gridView.HeaderRow.Cells[j].Text = System.Web.HttpUtility.HtmlDecode( gridView.HeaderRow.Cells[j].Text );
        }
    }
}

31 Aug 2011

新蛋西安招聘.net软件工程师

岗位职责

 

6、熟悉Silverlight,WPF相关开发者优先
7、熟练阅读英文文档,具备一定英语沟通和写作能力者优先
8、熟练使用Javascript,有JQuery开发经验优先。
9、二年以上的程序员经验,一年以上、NET开发经验; 
10、正规院校计算机以及相关专业,本科以上学历; 
11、协作能力、学习能力强
12、诚实、正直、客观,良好的团队合作精神; 
13、微软、Net、C#、ASP、Net、SqlServer 方向的MVP优先

有意从事大规模电子商务解决方案研发的童鞋可发简历 至 Marble.M.Wu {AT} newegg.com,谢谢。

 

06 Aug 2011

在 Ubuntu 下安装 Redis 并使用 init 脚本启动 && 添加 删除ubuntu自启动服务


1. 下载安装:
cd /tmp
wget http://redis.googlecode.com/files/redis-*.*.*.tar.gz
tar -zxf redis-*.*.*.tar.gz
cd redis-*.*.*
make
sudo make install
2. 配置init脚本:
wget https://github.com/ijonas/dotfiles/raw/master/etc/init.d/redis-server
wget https://github.com/ijonas/dotfiles/raw/master/etc/redis.conf
sudo mv redis-server /etc/init.d/redis-server
sudo chmod +x /etc/init.d/redis-server
sudo mv redis.conf /etc/redis.conf
3. 初始化用户和日志路径
sudo useradd redis
sudo mkdir -p /var/lib/redis
sudo mkdir -p /var/log/redis
sudo chown redis.redis /var/lib/redis
sudo chown redis.redis /var/log/redis
4. 启动Redis:
sudo /etc/init.d/redis-server start


添加一个服务
#sudo update-rc.d 服务名 defaults 99
删除一个服务
#sudo update-rc.d 服务名 remove
临时重启一个服务
#/etc/init.d/服务名 restart
临时关闭一个服务
#/etc/init.d/服务名 stop
临时启动一个服务
#/etc/init.d/服务名 start

22 Jun 2011

在Console下输入密码,以星号代替。

如何在Console下输入密码,像*unix系统下那样不显示,或者显示星号,如下代码经过测试:

/// <summary>
/// Gets the console secure password.
/// </summary>
/// <returns></returns>
private static SecureString GetConsoleSecurePassword( )
{
    SecureString pwd = new SecureString( );
    while ( true )
    {
        ConsoleKeyInfo i = Console.ReadKey( true );
        if ( i.Key == ConsoleKey.Enter )
        {
            break;
        }
        else if ( i.Key == ConsoleKey.Backspace )
        {
            pwd.RemoveAt( pwd.Length - 1 );
            Console.Write( "\b \b" );
        }
        else
        {
            pwd.AppendChar( i.KeyChar );
            Console.Write( "*" );
        }
    }
    return pwd;
}

/// <summary>
/// Gets the console password.
/// </summary>
/// <returns></returns>
private static string GetConsolePassword( )
{
    StringBuilder sb = new StringBuilder( );
    while ( true )
    {
        ConsoleKeyInfo cki = Console.ReadKey( true );
        if ( cki.Key == ConsoleKey.Enter )
        {
            Console.WriteLine( );
            break;
        }

        if ( cki.Key == ConsoleKey.Backspace )
        {
            if ( sb.Length > 0 )
            {
                Console.Write( "\b\0\b" );
                sb.Length--;
            }

            continue;
        }

        Console.Write( '*' );
        sb.Append( cki.KeyChar );
    }

    return sb.ToString( );
}

gist:https://gist.github.com/1039424

01 Jan 2011

在ubuntu上配置 nginx和php+fastcgi

(1)安装php5
apt-get install php5 php-pear php5-cli php5-common php5-xcache php5-cgi php5-mysql php5-curl  php5-gd  php5-imagick  php5-xmlrpc  php5-dev php5-memcache
(2)安装nginx
apt-get install nginx
(3)安装spawn-fcgi
 apt-get install spawn-fcgi
(4)设置,也是最头疼滴地方哦

在/etc/nginx/fastcgi_params 文件最后,加入一行,可以用sudo gedit /etc/nginx/fastcgi_params打开文件
fastcgi_param SCRIPT_FILENAME     $document_root$fastcgi_script_name;
设置php.ini的 cgi.fix_pathinfo=1;doc_root=
拷贝/etc/nginx/sites-availab修改本机hosts文件,指定一个域名
修改server_name
在server_name同级增加root 设置为网站根目录
location里 加上 index.php
php的fast-cgi配置

    location ~ \.php$ {
        fastcgi_pass   127.0.0.1:9000;
        fastcgi_index  index.php;
        include fastcgi_params;     
    }

$ sudo killall -HUP php5-cgi
$ sudo /usr/bin/spawn-fcgi -a 127.0.0.1 -p 9000 -C 5 -u www-data -g www-data -f /usr/bin/php5-cgi -P /var/run/fastcgi-php.pid
$ /etc/init.d# sudo /etc/init.d/nginx restart 
在网站内放个phpinfo测试一下,ok了。

25 Dec 2010

VirtualBox内的Linux和宿主Windows的文件共享

VirtualBox内的Linux和宿主Windows的文件共享
(1)安装增强功能
(2)分配数据空间,制定一个名称,假设为“temp”
(3)挂载, mount -t vboxsf temp /mnt

OK了
另外,反之共享Linux路径,然后在windows内映射网络驱动器即可。

BTW:使用http://www.chiark.greenend.org.uk/~sgtatham/putty/download.html内的PSCP.exe也可以
但我没有去试验。

06 Aug 2010

淘宝首页 say goodbye to YUI 了还是forever的

好久没有时间读google reader了攒了上千条,今天上去,玉伯的一则快讯映入眼帘

Thanks YUI, and says goodbye to YUI forever!

http://lifesinger.org/blog/2010/08/kissy-briefings-1/

 

24 Jul 2010

在centos上装rubyee,passenger和memcached ,搭建rails环境

流水笔记一则.

我之前已在服务器配置了nginx,php,mysql等,现在先安装ruby企业版

cd /tmp
wget http://rubyforge.org/frs/download.php/71096/ruby-enterprise-1.8.7-2010.02.tar.gz
tar -xzvf ruby-enterprise-1.8.7-2010.02.tar.gz
cd ruby-enterprise-1.8.7-2010.02
./installer

然后按照提示做

设置一下环境变量 
export PATH=/rubyee/bin:$PATH
接着
ruby -v
gem -v
看到版本号,说明rubyee 安装ok

下来
gem install passenger
passenger-install-nginx-module

按照提示在nginx配置文件里增加:

http {
     ...
     passenger_root /rubyee/lib/ruby/gems/1.8/gems/passenger-2.2.14;
     passenger_ruby /rubyee/bin/ruby;
     ...
}

  server {
     listen 80;
     server_name www.yourhost.com;
     root /somewhere/public;   # <--- be sure to point to 'public'!
     passenger_enabled on;
  }

rails 欧了~

下来开始装 memcached,

memcached 的使用需要libeven的支持

cd /tmp
wget http://www.monkey.org/~provos/libevent-1.4.14a-stable.tar.gz
tar -zxvf libevent-1.4.14a-stable.tar.gz
cd libevent-1.4.14-stable
./configure --prefix=/usr
make && make install

cd /tmp
wget http://memcached.org/latest
tar -zxvf memcached-1.4.5.tar.gz
cd memcached-1.4.5
./configure --prefix=/usr/local
make && make install

 现在可以用
service memcached start  


  service memcached stop  

这两个很骚的命令来管理memcached服务了,欧了~

安装mysql gem
gem install --no-rdoc --no-ri mysql -- --with-mysql-dir=/usr/local/mysql --with-mysql-config=/usr/local/mysql/bin/mysql_config

安装 ImageMagick

wget ftp://ftp.imagemagick.org/pub/ImageMagick/ImageMagick.tar.gz
tar xvfz ImageMagick.tar.gz
cd ImageMagick*
./configure --disable-static --with-modules --with-gs-font-dir=/usr/share/fonts/type1/gsfonts
make
sudo make install
cd ..
rm -Rf ImageMagick*

wget http://rubyforge.org/frs/download.php/70067/RMagick-2.13.1.tar.bz2
tar -jxf RMagick-2.13.1.tar.bz2
cd RMagick*
./configure --disable-static --with-modules --without-perl --without-magick-plus-plus --with-jpeg=yes --with-png=yes --with-tiff=yes --with-quantum-depth=8  --with-gs-font-dir=/usr/share/fonts/type1/gsfonts
ruby setup.rb
ruby setup.rb install
cd ..
rm -Rf RMagick*

最后 上传 rails 程序
接着 rake gems:install

centos安装rmagick出现以下错误:
libMagickCore.so.2: cannot open shared object file: No such file or directory – /usr/lib/ruby/gems/1.8/gems/rmagick-2.8.0/lib/RMagick2.so
解决办法:

ldconfig /usr/local/lib

错误[memcache-client] Could not load SystemTimer gem, falling back to Ruby's slower/unsafe timeout library: no such file to load -- system_timer
rake aborted!

sudo gem install system_timer

Magick::ImageMagickError (unable to read font `/usr/local/lib/ImageMagick-6.6.3/config//usr/share/fonts/type1/gsfonts/n019003l.pfb' @ error/annotate.c/RenderFreetype/1056: `(null)'):
错误

wget http://sourceforge.net/projects/gs-fonts/files/gs-fonts/8.11%20%28base%2035%2C%20GPL%29/ghostscript-fonts-std-8.11.tar.gz/download
 tar -zxvf ghostscript-fonts-std-8.11.tar.gz
解压后拷贝到需要的目录

02 Jun 2010

Google 给几个Javascript Framework提供的CDN地址

Google 给几个Javascript Framework提供的CDN地址:

jquery

<script src=“http://ajax.googleapis.com/ajax/libs/jquery/1.4.2/jquery.min.js"></script>

jquery UI

<script src=“http://ajax.googleapis.com/ajax/libs/jqueryui/1.8.1/jquery-ui.min.js"></script>

Chrome Frame

<script src=“http://ajax.googleapis.com/ajax/libs/chrome-frame/1.0.2/CFInstall.min.js"></script>

swfobject

<script src=“http://ajax.googleapis.com/ajax/libs/swfobject/2.2/swfobject.js"></script>

mootools

<script src=“http://ajax.googleapis.com/ajax/libs/mootools/1.2.4/mootools-yui-compressed.js"></script>

Yahoo! UI

<script src=“http://ajax.googleapis.com/ajax/libs/yui/2.8.1/build/yuiloader/yuiloader-min.js"></script>

Prototype

<script src=“http://ajax.googleapis.com/ajax/libs/prototype/1.6.1.0/prototype.js"></script>

Ext.JS

<script src=“http://ajax.googleapis.com/ajax/libs/ext-core/3.1.0/ext-core.js"></script>

Dojo

<script src=“http://ajax.googleapis.com/ajax/libs/dojo/1.4.3/dojo/dojo.xd.js"></script>

Scriptaculous

<script src=“http://ajax.googleapis.com/ajax/libs/scriptaculous/1.8.3/scriptaculous.js"></script>

30 Apr 2010

京东新蛋攻防

这是一片不断膨胀、愈演愈烈的虚拟战场。每一位统帅都着迷于它的独特魅力——任何势力的盛衰都取决于无数素未谋面的人的鼠标点击。每一位统帅也都必须铭记:实体世界里“强攻弱守”的军事规律已经在此失效。这里唯一可以遵循的生死法则是,无论势力强弱,一旦站到防守的位置上,那么溃败将接踵而来,且来得出乎意料地快

http://finance.ifeng.com/news/20100429/2128118.shtml

京东新蛋攻防
来源:凤凰网    日期:10年04月30日 10:35:18