假设成立之后,是使用js,还是使用interface接口,还是...

insus 2011-11-10 09:07:45
弄清楚问题,首先看这篇http://www.cnblogs.com/insus/archive/2011/11/08/2241255.html
你可以看到博文的的2楼朋友回复使用了js技术把问题解决了,然后Insus.NET在4楼做了二个假设。
开发过程中,客户有可能不断要求,便有此两个假设。接下来,我们(有可能是另外一些程序员,不是自己)是要怎样面对不断变化的要求,让维护简单,容易与轻松。
...全文
257 13 打赏 收藏 转发到动态 举报
写回复
用AI写文章
13 条回复
切换为时间正序
请发表友善的回复…
发表回复
insus 2011-11-17
  • 打赏
  • 举报
回复
[Quote=引用 11 楼 a157147899 的回复:]

你是来做广告呢 还是讨论呢?
[/Quote]

这要看您的心态了。
a157147899 2011-11-11
  • 打赏
  • 举报
回复
你是来做广告呢 还是讨论呢?
Im_Sorry 2011-11-11
  • 打赏
  • 举报
回复
你既然能考虑到客户的需求,你就事先写好,然后来个动态操作不就好了!
ailin84 2011-11-10
  • 打赏
  • 举报
回复
个人觉得 js 还是按钮提交 区别不大的吧,只是一个数据字典的管理,不能要求开发人员js水平吧

定义好自己的后台实现方式倒是应该的,开发人员自己选择js ajax还是按钮事件

瞎写的一段

public string FormatSortDateTime(string strTime)
{
DateTime time = DateTime.Parse(strTime);
return time.ToShortDateString();
}

public static void Add(string value, Func<string, string> format)
{
string formatValue = format(value);
//持久化
//...
}

public static List<string> GetList(string id)
{
return null;
}

//js的话就使用ajax调用add方法,再重新获取数据

//以下是页面按钮提交模拟
public void btnButton1_click()
{
var page = (IGetable)this.Page;
string value = page.TextBoxValue;
DataDictionaryManager.Add(value, s => s.ToLower());
//已定义的格式
DataDictionaryManager.Add(value, FormatSortDateTime);
this.DataBind();
}
naonaoye 2011-11-10
  • 打赏
  • 举报
回复
这个还是js吧,如果要添加到数据库那就用下ajax
a157147899 2011-11-10
  • 打赏
  • 举报
回复
不好意思 理解错了

你的意思是 只是控件的Id改变 或者数据来源改变 而不是数量上的改变。

那写一个通用函数,是否能解决问题?

function AddItem(value)
{
document.getElementById("DropDownList").options.add(new Option(value, ""));
}
a157147899 2011-11-10
  • 打赏
  • 举报
回复
给出你的扩展方法

大家观摩一下 有多方便
a157147899 2011-11-10
  • 打赏
  • 举报
回复

using System;
using System.Collections.Generic;
using System.Linq;
using System.Web;
using System.Web.UI;
using System.Web.UI.WebControls;
using Insus.NET;

public partial class _Default : System.Web.UI.Page,IGetable
{
protected void Page_Load(object sender, EventArgs e)
{

}

//Insus.NET:实现接口
public string TextBoxValue
{
get {
return this.TextBox1.Text;
}
}
}


第一个假设,如果在现要有基础上,再加上5个aspx,每个aspx的TextBox的ID都不一样。其它四个ID如TypeV,TextBox6,txtName,Txt8。


如果有这样的需求
你的扩展方法
是否是在IGetable接口里 在另外增加4个属性
然后 页面上也要额外的实现这4个新增的属性?
thinkingforever 2011-11-10
  • 打赏
  • 举报
回复
如果要加5个页面那就在5个页面上实现TextBoxValue接口,至于控件名称或者是函数计算出来的都在实现接口的方法中实现,这样设计没啥问题啊。用js还是session还是数据库,这个根据你自己项目实际需要吧,他们之间的区别当然显而易见
阿非 2011-11-10
  • 打赏
  • 举报
回复
还能再明显一点么
机器人 2011-11-10
  • 打赏
  • 举报
回复
说实话个人倾向用js实现,这种东西没必要提交嘛。。。
风2013 2011-11-10
  • 打赏
  • 举报
回复
这个东西 应该还得在数据库建表存储那些添加的 通过j做异步操作....就算以后再添加维护应该也不难吧...帮顶!!!!!

62,046

社区成员

发帖
与我相关
我的任务
社区描述
.NET技术交流专区
javascript云原生 企业社区
社区管理员
  • ASP.NET
  • .Net开发者社区
  • R小R
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告

.NET 社区是一个围绕开源 .NET 的开放、热情、创新、包容的技术社区。社区致力于为广大 .NET 爱好者提供一个良好的知识共享、协同互助的 .NET 技术交流环境。我们尊重不同意见,支持健康理性的辩论和互动,反对歧视和攻击。

希望和大家一起共同营造一个活跃、友好的社区氛围。

试试用AI创作助手写篇文章吧