我们的代码库中有几个空的抽象类.我觉得很难看.但除了这个非常愚蠢的理由(丑陋)之外,我应该重构它(例如空的界面)吗?
否则,代码是健壮的并经过充分测试.因此,如果它只是出于"审美"的原因,我将通过并让空的抽象类保持不变.
你怎么看?
编辑:
1)通过"空抽象类",我的意思是:
public abstract class EmptyAbstractClass {}
Run Code Online (Sandbox Code Playgroud)
2)"空虚"的原因:Hibernate.我根本没有掌握这个持久性框架.我只是理解一个接口不能映射到一个表,并且由于这个技术原因,一个类比接口更受欢迎.
是否有命令行实用程序来修改oracle客户端的tnsnames.ora文件?
[编辑]我正在寻找类似于odbcconf.exe(用于编辑Windows上的ODBC连接)的东西来修改tnsnames.ora文件.
[编辑2]我在自动构建脚本中使用MSBUILD.该的MSBuild社区任务项目具有适合正是我所需要的AddTnsName任务.我的谷歌搜索技巧一定很弱.我应该一直在搜索MSBuild和tnsnames.ora而不是命令行tnsnames.ora.但是,Oracle确实没有为tnsnames.ora提供odbcconf之类的命令行实用程序.
我正在创建一个名为"mySite"的分类广告网站,我希望honda +mySite在谷歌搜索的任何人
,从我的数据库中找到所有"honda"或标题"honda"的广告.
这是怎么做到的?(每个广告的htm页面?然后在用户点击打开htm页面时加载'广告数据'?)
我有一个例子让你看看:www.blocket.se瑞典的网站,你可以买几乎任何东西.我猜它们实际上没有500万个html页面只是为了谷歌可以找到它们吗?
尝试在google中搜索:blocket +bmw 330ci您将看到来自blocket.se数据库的结果.
问题是:他们是如何做到的?我该怎么做才能拥有相同的功能呢?
谢谢
如果您需要更多输入,请告诉我,我会更新!
我正在使用Microsoft企业库将一些日志写入事件日志
它的写入记录很好,但似乎没有在事件日志中设置类别.该类别在日志的消息正文中显示正常(如果我选择设置该类别),但事件查看器不会选择该类别.
我错过了什么?
c#来源
LogEntry log = new LogEntry();
log.Message = "Test";
log.Categories.Add("Event");
Logger.Write(log);
Run Code Online (Sandbox Code Playgroud)
网络配置
<loggingConfiguration name="Logging Application Block" tracingEnabled="true"
defaultCategory="General" logWarningsWhenNoCategoriesMatch="true">
<listeners>
<add source="TestLogSource" formatter="Text Formatter" log="TestLog"
machineName="" listenerDataType="Microsoft.Practices.EnterpriseLibrary.Logging.Configuration.FormattedEventLogTraceListenerData, Microsoft.Practices.EnterpriseLibrary.Logging, Version=3.1.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a"
traceOutputOptions="None" type="Microsoft.Practices.EnterpriseLibrary.Logging.TraceListeners.FormattedEventLogTraceListener, Microsoft.Practices.EnterpriseLibrary.Logging, Version=3.1.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a"
name="Formatted EventLog TraceListener" />
</listeners>
<formatters>
<add template="Timestamp: {timestamp}
Message: {message}
Category: {category}
Severity: {severity}"
type="Microsoft.Practices.EnterpriseLibrary.Logging.Formatters.TextFormatter, Microsoft.Practices.EnterpriseLibrary.Logging, Version=3.1.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a"
name="Text Formatter" />
</formatters>
<categorySources>
<add switchValue="All" name="Events">
<listeners>
<add name="Formatted EventLog TraceListener" />
</listeners>
</add>
<add switchValue="All" name="General">
<listeners>
<add …Run Code Online (Sandbox Code Playgroud) 我一直在阅读一些代码并且发现了一个不知何故扰乱了我的声明.
typedef GLfloat vec2_t[2];
typedef GLfloat vec3_t[3];
Run Code Online (Sandbox Code Playgroud)
从我的角度来看,如
typedef unsigned long ulong;
Run Code Online (Sandbox Code Playgroud)
意味着ulong被认为意味着无符号长
现在,下面的陈述是否意味着vec2_t [2]相当于GLfloat?
typedef GLfloat vec2_t[2];
Run Code Online (Sandbox Code Playgroud)
最有可能的,可能不是预期的含义.如果有人为我解决这个问题,我将不胜感激.谢谢
我想了解多次发送是什么.我阅读了很多不同的文本,但我仍然不知道多重发送是什么以及它有什么好处.也许我缺少的是使用多个调度的代码片段.请问,您是否可以使用多个调度在C++中编写一小段代码,以便我可以看到它无法正确编译/运行,因为C++只有单个调度?我需要看到差异.谢谢.
正则表达式非常适合文本编辑.但有时他们还不够.例如,假设我有一个包含1000个句子的文本,第一个字符为小写:
我叫Foo.你好,你好吗?我真的很喜欢这个论坛....等
我想转换它们,以便第一个字母大写.这可以使用正则表达式,但是您需要的正则表达式非常冗长且不整洁.我最喜欢的正则表达式之一是可以在括号中捕获字符串的一部分,并使用$ i或\ i或其他任何替换.
我的问题是:你知道编辑器的编辑器或插件,你可以用某种语言处理这个捕获组(比方说,Python?).这将允许我们做以下事情:
搜索:
^(.)(.*)$
并将其替换为:
toUpperCase($ 1)$ 2
如果你知道一个这样的系统,请告诉我.提前致谢,
曼努埃尔
在我们无法重现的生产环境中,我们会定期关闭Windows服务.可能需要几个月才能再次发生.
我正在进行一些诊断尝试并帮助解决这个问题,我正在考虑的一件事是在我们开始关闭应用程序后将事件添加到系统线程池60秒.我们的应用程序应在10秒内完全关闭.
在这种情况下,我想跟踪进程的剩余运行线程到事件日志.
我可以使用System.Diagnostics.Process.GetCurrentProcess.Threads获取正在运行的线程.这些线程对象具有本机Win32线程ID等.
我想知道是否有任何方法可以从这些线程ID返回到它们在当前进程中表示的任何托管线程.我试图这样做的原因是因为我们的线程池和其他线程产生了我们给出了代表它们的目的的名称,它真的有助于把它们拿回来.
我通过Linq-to-SQL调用存储过程.此存储过程只处理我已插入另一个表的数据.在大型数据集上,我收到超时异常:
"Timeout expired. The timeout period elapsed prior to completion of the operation
or the server is not responding."
Run Code Online (Sandbox Code Playgroud)
我无法做任何事情来加速存储过程 - 它只是将数据从一个表移动到另一个表.我并不特别想增加数据库连接字符串中的超时 - 这是唯一需要很长时间的事情.
这不是一个网络应用程序; 从普通Windows服务中的后台线程调用存储过程.后台线程由WCF调用启动,客户端定期轮询后台线程的结果.
不幸的是,存储过程花费的时间太长,并且GetDataContext().spRunStoredProcedure()调用抛出一个TimeoutException,即使存储过程看起来运行正常.
我可以为此存储过程调用增加超时吗?或者有没有办法让存储过程返回"我还没死",以防止连接超时?
我正在尝试让我的 iPhone 在录音时振动。
我试过这个:
UInt32 category = kAudioSessionCategory_PlayAndRecord;
status |= AudioSessionSetProperty(kAudioSessionProperty_AudioCategory, sizeof(category), &category);
UInt32 allowMixing = true;
status |= AudioSessionSetProperty (
kAudioSessionProperty_OverrideCategoryMixWithOthers, // 1
sizeof (allowMixing), // 2
&allowMixing // 3
);
status |= AudioSessionSetProperty(
kAudioSessionProperty_OtherMixableAudioShouldDuck, // 1
sizeof (allowMixing), // 2
&allowMixing // 3
);
Run Code Online (Sandbox Code Playgroud)
正如这里所建议的。然后稍后通过调用振动设备
AudioServicesPlaySystemSound(kSystemSoundID_Vibrate);
Run Code Online (Sandbox Code Playgroud)
但它不起作用。但它不会振动。它记录良好,如果我在停止记录之前调用振动时刻,它会在停止后振动。
显然这是一个错误,有人知道解决方法吗?
c# ×2
c++ ×2
audio ×1
c ×1
cocoa-touch ×1
database ×1
diagnostics ×1
html ×1
iphone ×1
java ×1
linq-to-sql ×1
logging ×1
msbuild ×1
mysql ×1
objective-c ×1
oracle ×1
oracleclient ×1
php ×1
plugins ×1
refactoring ×1
regex ×1
sql ×1
text ×1
text-editor ×1
tnsnames ×1