会员
周边
众包
新闻
博问
闪存
所有博客
当前博客
我的博客
我的园子
账号设置
简洁模式
...
退出登录
注册
登录
Surance Center
xxpyeippx
博客园
首页
新随笔
联系
订阅
管理
我也用到了递归
昨天在写“自动生成代码工具”的时候,终于用到了递归。这表示我的编程水平已经有点“算法”的味道了。
我的用法是:
现实模板。而模板是嵌套的。
以下是代码:
/**/
///
<summary>
///
显示未引用其他模板的模板
///
</summary>
public
static
string
ShowNotRefTemplate(
string
fileName)
{
CodeSurance.DAL.FileAL fa
=
new
FileAL();
return
fa.ReadFile(fileName);
}
/**/
///
<summary>
///
显示引用了其他模板的模板
///
</summary>
public
static
string
ShowRefTemplate(
string
fileName)
{
CodeSurance.DAL.FileAL fa
=
new
FileAL();
string
oldStr
=
fa.ReadFile(fileName);
if
(oldStr.IndexOf(
"
$ClassCover
"
)
>-
1
)
oldStr
=
oldStr.Replace(
"
$ClassCover
"
, ShowNotRefTemplate(
"
ClassCover
"
));
if
(oldStr.IndexOf(
"
$ClassConstructor
"
)
>
-
1
)
oldStr
=
oldStr.Replace(
"
$ClassConstructor
"
, ShowRefTemplate(
"
ClassConstructor
"
));
if
(oldStr.IndexOf(
"
$ClassProperty
"
)
>
-
1
)
oldStr
=
oldStr.Replace(
"
$ClassProperty
"
, ShowRefTemplate(
"
ClassProperty
"
));
if
(oldStr.IndexOf(
"
$InternalMember
"
)
>
-
1
)
oldStr
=
oldStr.Replace(
"
$InternalMember
"
, ShowRefTemplate(
"
InternalMember
"
));
if
(oldStr.IndexOf(
"
$ClassFoot
"
)
>
-
1
)
oldStr
=
oldStr.Replace(
"
$ClassFoot
"
, ShowNotRefTemplate(
"
ClassFoot
"
));
if
(oldStr.IndexOf(
"
$OneMember
"
)
>
-
1
)
oldStr
=
oldStr.Replace(
"
$OneMember
"
, ShowNotRefTemplate(
"
OneMember
"
));
if
(oldStr.IndexOf(
"
$OneProperty
"
)
>
-
1
)
oldStr
=
oldStr.Replace(
"
$OneProperty
"
, ShowNotRefTemplate(
"
OneProperty
"
));
if
(oldStr.IndexOf(
"
$OneParam
"
)
>
-
1
)
oldStr
=
oldStr.Replace(
"
$OneParam
"
, ShowNotRefTemplate(
"
OneParam
"
));
return
oldStr;
}
public
static
void
ModifyTemplate()
{
Console.WriteLine(
"
***********模板修改:***********
"
);
Console.WriteLine(
"
请进入
"
+
CodeSurance.ConfigSet.ConfigOperation.ShowCurrentFilePath()
+
"
Templates\\ 改写摸版。
"
);
Console.WriteLine();
Console.WriteLine(
"
模板注释:
"
);
Console.WriteLine();
Console.WriteLine(
"
$ClassCover 表示ClassCover.txt的内容
"
);
Console.WriteLine(
"
$ClassConstructor 表示ClassConstructor.txt的内容
"
);
Console.WriteLine(
"
$ClassProperty 表示ClassProperty.txt的内容
"
);
Console.WriteLine(
"
$InternalMember 表示InternalMember.txt的内容
"
);
Console.WriteLine(
"
$ClassFoot 表示ClassFoot.txt的内容
"
);
Console.WriteLine(
"
$FiledType 表示字段类型
"
);
Console.WriteLine(
"
$upperFiled 表示字段名称,第一个字符大写
"
);
Console.WriteLine(
"
$lowerFiled 表示字段名称,第一个字符小写
"
);
Console.WriteLine(
"
$OneMember 表示OneMember.txt的内容
"
);
Console.WriteLine(
"
$OneProperty 表示OneProperty.txt的内容
"
);
Console.WriteLine(
"
$TablelName 表示数据库中的表的表名
"
);
Console.WriteLine(
"
$AddName 表示生成的类的名称为 表名+什么
"
);
Console.WriteLine(
"
$OneParam 表示OneParam.txt的内容
"
);
Surance Yin
@
Surance Center
转载请注明出处
posted @
2006-12-13 12:27
xxp
阅读(
206
) 评论(
0
)
编辑
收藏
举报
会员力量,点亮园子希望
刷新页面
返回顶部
公告
Surance Center