我决定将SQLite用于我的个人开发项目,因为它刚刚从我的计算机中脱颖而出,似乎是我自己的意志,我想了解更多.问题是,我开始真的错过了我习惯使用的重量级RDBMS的许多功能:存储程序,约束,DRI,DateTime等复杂数据类型.
我真的很喜欢"数据库作为文件"的概念,但我发现自己从头开始实现了很多完整性功能.
所以,正如标题所说,我很好奇:产品中是否有更多我不知道的功能?是否有根据需要添加功能的工具或库(最好是.Net)?还有另一个版本更强大吗?
我正在使用Mono 2.4和Mono.Data.SQLite.
我正在为一个不太害怕我的代码的公司编写另一个ActiveRecord实现,而不是在CastleProject的实现上命名为"Release Candidate".无论如何,我在基类的每个属性上使用Attributes将它们映射到返回的DataSet列:
[ResultColumnAttribute("CUST_FIRST_NAME")]
public string FirstName
{
get { return _columnName; }
set { _columnName = value; }
}
Run Code Online (Sandbox Code Playgroud)
所以当我从DataSet实例化该类时,我将该属性值赋值为该列的值.当列与属性映射但未显示在DataSet中时,我应该抛出什么异常?我不想去写一个自定义的(懒惰),我认为Application.Exception有点不伦不类.
在与客户服务部门的非正式谈话中,他们对我们基于网络的CSA(客户服务应用程序)表示不满.在呼叫中心,每小时的呼叫是至关重要的,浪费大量时间在鼠标周围,点击按钮,在下拉列表中选择值等等.客户服务的目标者渴望得到的是回归键盘的美好时光具有极少视觉细节的驱动应用程序,只需要向CSR提供数据和处理呼叫所需的内容.
我不禁想起我们以前习惯使用的绿屏应用程序(以及我们之间经验丰富的经验).这样的应用程序不仅会更高效,而且对于使用的代表来说更健康,因为他们必须冒着全天通过Web应用程序进行数据输入的风险.
我希望保持基于浏览器的部署的便利性并保留我们在Microsoft堆栈中的现有投资,但是如何将这种键盘驱动的超简单绿屏概念提供给Web?
好的答案将链接到库,具有类似样式的其他Web应用程序,组织和优先键盘快捷键数据的最佳实践(不是如何添加它们,而是如何存储和维护快捷方式以及自动解决冲突等.
编辑:接受的答案不会是关于如何在网上做UI的小型讲座.我不希望任何链接,按钮或任何东西点击任何东西.
EDIT2:这个应用程序有500个用户,分布在北美的呼叫中心.我无法重新训练他们使用TAB键
这是我的班级:
[Serializable()]
[XmlRootAttribute("Language")]
public class Language : ISerializable
{
string Id {
get;
set;
}
string Part2B {
get;
set;
}
string Part2T {
get;
set;
}
string Part1 {
get;
set;
}
string Scope {
get;
set;
}
string LanguageType {
get;
set;
}
string RefName {
get;
set;
}
string Comment {
get;
set;
}
Run Code Online (Sandbox Code Playgroud)
剪断
我从Mono Web服务返回它们的数组,如下所示:
[WebMethod()]
[ScriptMethod(ResponseFormat=ResponseFormat.Json)]
public Language[] GetLanguages()
{
List<Language> languages;
languages = GetLanguageList();
return languages.ToArray();
}
Run Code Online (Sandbox Code Playgroud)
但我得到的是:
<?xml version="1.0" encoding="utf-8"?>
<ArrayOfLanguage xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" …Run Code Online (Sandbox Code Playgroud) 我有两个List<Name>s:
public class Name
{
public string NameText {get;set;}
public Gender Gender { get; set; }
}
public class Gender
{
public decimal MaleFrequency { get; set; }
public decimal MaleCumulativeFrequency { get; set; }
public decimal FemaleCumulativeFrequency { get; set; }
public decimal FemaleFrequency { get; set; }
}
Run Code Online (Sandbox Code Playgroud)
如果NameText属性相匹配,我想取FemaleFrequency和FemaleCumulativeFrequency从女性的名单NameS和MaleFrequency和MaleCumulativeFrequency值从男性的名单NameS和创建一个列表Name与使用全部四个属性秒.
使用.Net 3.5在C#中最简单的方法是什么?
我不记得确切地在哪里看到了这个奇怪的`1(单一刻度和数字1)出现在类名旁边,但它在调试时检查变量值并且最近在这个问题的答案中显示出来.
targetClass.BaseTypes.Add(new CodeTypeReference { BaseType = "DataObjectBase`1[Refund]", Options = CodeTypeReferenceOptions.GenericTypeParameter })
Run Code Online (Sandbox Code Playgroud)
我很好奇:这是从哪里来的,为什么会出现?
喜欢这个问题,除了T-SQL而不是php.
206275947 = 2062759.47
等等
我遇到的问题是,尝试对此列中的值进行求和会使SQL中的整数数据类型溢出.
SUM(CONVERT(money,[PaymentInCentsAmt]))
Run Code Online (Sandbox Code Playgroud)
只是将".00"添加到值的末尾.我错过了什么明显的事情?
我确信这些信息可以在C#规范中找到,但我想我会给你一个机会让我直截了当.为什么这段代码不能编译?
namespace DataObjects
{
class QuestionMark
{
public bool Possible? {get; set;}
}
}
Run Code Online (Sandbox Code Playgroud)
有什么办法可以让我的布尔属性以问号结尾吗?我认为这会增加可读性并且很漂亮.
我们来听听吧!
c# ×7
.net ×2
mono ×2
clr ×1
exception ×1
generics ×1
hotkeys ×1
ienumerable ×1
memoization ×1
side-effects ×1
sqlite ×1
t-sql ×1
types ×1