[singlepic=15030]

[singlepic=15031]

济南这几天在下雨,凉爽舒适。
记得去年写《北京这几天》的时候提到过南北方下雨的不同,尤其是那股泥土的气味,在南方是断然不可能闻到的。

[singlepic=15054,700,525]

[singlepic=15056,700,525]

今天出门在玻璃窗上还发现了一种动物,蜗牛,也是儿时的记忆,到了南方去上学再也没见到过的。记得还在小学一年级的时候,每次下过雨,走在工商河畔,蜗牛就像地上的小石子,四处可见。靠近排水管道的墙壁上,也会爬满了这种小动物,但是好像很短命,太阳出来,它们就会缩在壳里,黏在某处,慢慢被晒干。或者因为满地都是,走过的人们一不小心就会踩扁一个,我也不小心踩到一个,小小地伤心一下。

上海真热。昨天走之前因为几天来一直起得很早,很疲倦,躺在床上想睡个午觉,结果也就分不清是从窗户里进来的还是我安放在主机箱后面的风扇吹出来的热风,热浪一样地席卷全身,万分无奈只好放弃,去实验室吧。
到了实验室吓了一跳,居然有三个女生在,这么多年还没在实验室见过这么多女生,呵呵~据说学弟们进门的时候直接吓一跳跑出去了…
和魏瑶杨晖去火车站,做了个大灯泡,照例在火车站满处找灯看书,上车,开车,发一些短信,祈祷,然后睡觉。
一觉睡到5点钟。这一晚有着在火车上能睡好的所有条件,空调比较舒适,四周女性居多,没人打呼噜,小孩也不哭不闹,不错…
洗刷后坐下来看着窗外渐渐亮起来的世界,发现另一番天地。一个月前回来的时候,这几片地还是金灿灿一片小麦等待收割,今天回来,新种下的玉米也有了一人高。

妈妈来接我了,听说最近她身体不舒服,瘦了不少。

济南真的是一个特殊的地方,回家的路上,经过很多很多很多地方,闭上眼睛,以前发生在这里的一幕幕仿佛就在昨天。生活在济南真的只能用惬意形容,这里气候宜人,生存压力很小,人也很有人情味哦。尤其,徜徉在这里的街道上,仿佛就能看到她的存在~

[audio:http://www.skyless.be/gamerz/Loituma%20-%20Ievan%20polkka.mp3]

井上甩葱歌
原版Loituma是来自芬兰的一支演唱团队,有四位成员组成了四个声部来演唱,他们的歌曲都是以比较传统的芬兰音乐为主。参加1997年的考斯蒂宁民谣音乐节而倍受关注。
Loituma是一支芬兰的民间乐队,主唱Anita Lehtola是一位非常具有声音魅力的女歌手,她经常参加各种世界乐,Anita的演唱具有Runo-song的意味(Runo-song 又称“rune-song”或是“poem-song”。“rune”的意思是古代北欧和芬兰的诗歌。 这是一种芬兰的民间诗歌,其形式是一种反复的,在开头押韵的诗歌形式),清冷而又极具韵味,仿佛把我们带到暸一片绿茵之地,辽远而又恰是幻境。

什么叫甩葱歌,而不是甩青菜,甩萝卜?
在周刊少年Jump连载的《BLEACH(久保带人)》,於2004年10月5日动画化,并开始放映。然后在该动画的第二话中,出现了“满面笑容的井上织姬,手里拿著葱转转转”的场景,这就是转葱、甩葱的原点。
再来,芬兰的“Loituma”的乐团,在1995年演唱了芬兰民谣“Ievan Polkka”,这就是转葱(甩葱)歌的音乐部份。
后来,有位很喜欢这两个作品的无名氏,制作出以“Ievan Polkka”的其中一小段作为背景音乐,“满面笑容的井上织姬,手里拿著葱转不停”,长度26秒的flash动画,就成了有名的转葱歌(的元祖)。而井上织姬也因此动画,而得到和原作毫无关系的“Loituma Girl”的称号。


原版甩葱歌


甩葱原唱


宠物小精灵甩葱


初音ミク甩葱


初音甩葱歌「Ievan Polkka」 绝望先生版


CLANNAD风子甩葱歌


口罩姬系列2甩葱舞


经典的幸运星甩葱歌

虽然很无聊,不过,哈哈哈,好久没笑这么开心啦~

状态不错哦。
手机停机了,彻底安静了,连每天三条机器短信也没了。我想,有一天我也就不用手机了吧。打我手机还不如Email我响应得快些。
早上召集大家开会,把我昨天写的几个Howto仔细讲了讲,效果似乎还不错,都在听,除了某些贱人(我没说是毛君)。天气好热,中午回来的路上就开始思考一个问题,为什么天气热了,心也就不寒了。一直以为心理状态和天气无关,其实,天气太热了,也就没法集中精力想一件事情了吧。
今天做了如下事情:

  • 建了4个项目
  • 数据库完成了4个表的结构设计,并且添加了基础的信息
  • 培训了好几组人,大家现在应该都有信心了吧

周六老板要来开会,我却会在家里。到时候看我怎么死的吧。不过今天布置下去,该怎么应对,不过他来要是不讨论专业问题而讨论态度问题,就真的一点办法没有了。

为项目组写了几个Howto的Case。

本文描述了一个用C#实现了在Windows Form或者Windows Console下调用Web Service的例子。
这是一个较复杂的例子。解决方案由三个项目组成:

  • ClassLibrary:定义了两个自定义类,编译成Windows Class Library(DLL),并由另外两个项目引用
  • WebServiceHowto:Web Service的实现,主要是一个GetStudent的WebMethod,接受一个自定义类Dorm为参数,返回另一个自定义类Student。
  • UseWebServiceHowto:Windows Console(也可以是Windows Form),实现一个Proxy,通过添加Service Reference调用Web Service。

1. ClassLibrary
Dorm.cs
[code=’c#’]
using System;
using System.Collections.Generic;
using System.Text;
using System.Xml.Serialization;

namespace ClassLibrary
{
[Serializable, XmlRoot(Namespace = “http://its.hpcc.tongji.edu.cn”)]
public class Dorm
{
[XmlAttribute]
public string Name;
[XmlElement]
public string Number;
}
}
[/code]

Student.cs
[code=’c#’]
using System;
using System.Collections.Generic;
using System.Text;
using System.Xml.Serialization;

namespace ClassLibrary
{
[Serializable, XmlRoot(Namespace = “http://its.hpcc.tongji.edu.cn”)]
public class Student
{
[XmlElement]
public long Number;
[XmlElement]
public string Name;
[XmlElement]
public bool enabled;
[XmlElement]
public Dorm dorm;
}
}
[/code]

2. WebServiceHowto
ITSTestService.asmx.cs
[code=’c#’]
using System;
using System.Collections;
using System.ComponentModel;
using System.Data;
using System.Web;
using System.Web.Services;
using System.Web.Services.Protocols;
using ClassLibrary;

namespace WebServiceHowto
{
///

/// Summary description for ITSTestService
///

[WebService(Namespace = “http://hpcc.tongji.edu.cn/”)]
[WebServiceBinding(ConformsTo = WsiProfiles.BasicProfile1_1)]
[ToolboxItem(false)]
public class ITSTestService : System.Web.Services.WebService
{
[WebMethod]
public string HelloWorld()
{
return “Hello World”;
}

[WebMethod]
public Student GetStudent(Dorm d)
{
Student student = new Student();

student.dorm = d;
student.enabled = true;
student.Number = 222222;
student.Name = “maojun”;

return student;
}
}
}
[/code]

3. UseWebServiceHowto
Program.cs
[code=’c#’]
using System;
using System.Collections.Generic;
using System.Text;
using ClassLibrary;

namespace UseWebServiceHowto
{
class Program
{
static void Main(string[] args)
{
WebServiceProxy proxy = new WebServiceProxy();
Dorm dorm = new Dorm();

dorm.Name = “geng der drom”;
dorm.Number = “16-501-5”;

Student s = proxy.GetStudent(dorm);
Console.WriteLine(“Student Name={0}, Dorm={1}”, s.Name, s.dorm.Name);
}
}
}
[/code]

WebServiceProxy.cs
[code=’c#’]
using System;
using System.Collections.Generic;
using System.Text;
using System.Web.Services.Protocols;
using System.Web.Services;
using System.Diagnostics;
using System.ComponentModel;
using ClassLibrary;

namespace UseWebServiceHowto
{
[WebServiceBinding(Name = “TestWebServiceSoap”, Namespace = “http://hpcc.tongji.edu.cn/”), DebuggerStepThrough, DesignerCategory(“code”)]
class WebServiceProxy : SoapHttpClientProtocol
{
public WebServiceProxy()
{
base.Url = “http://localhost:3489/ITSTestService.asmx”;
}

[SoapDocumentMethod(“http://hpcc.tongji.edu.cn/GetStudent”, RequestNamespace = “http://hpcc.tongji.edu.cn/”, ResponseNamespace = “http://hpcc.tongji.edu.cn/”, Use = System.Web.Services.Description.SoapBindingUse.Default, ParameterStyle = System.Web.Services.Protocols.SoapParameterStyle.Default)]
public Student GetStudent(Dorm d)
{
return (Student)base.Invoke(“GetStudent”, new object[] { d })[0];
}
}
}
[/code]

下载:用Visual Studio 2008打开
http://download.nocoo.us/Download/Archive/CSharpHowto/SQLServer.rar