我正在寻找一些基于ASP.NET MVC的CMS应用程序架构的反馈.
域模型 - 除了System类之外什么都不依赖于定义类型.目前,大多贫血.
存储库层 - 抽象数据访问,仅由服务层调用
服务层 - 在域模型上执行业务逻辑.将视图模型暴露给控制器.
ViewModelMapper - 在视图模型和域模型之间来回转换的服务
控制器 - 超薄"交通警察"风格功能,与服务层交互,仅根据视图模型进行讨论,从不进行域模型
我的域模型主要用作数据传输(DTO)对象,目前逻辑很少.我发现这很好,因为它取决于什么(甚至不是服务层中的类).
服务层有点棘手......我只希望控制器能够访问视图模型以便于GUI编程.但是,有些服务需要相互通信.例如,我有一个事件服务,在标记内容,创建博客帖子等时通知其他侦听器服务.目前,将域模型作为输入或返回它们的方法标记为内部,因此它们不能被控制器.
听起来有点矫枉过正?抽象不够?我主要是将这作为一种严格的建筑学习而不是实际产品的学习练习,所以请不要按照"正确取决于你想做什么"的方式做出反馈.
谢谢!
是否可以img通过JavaScript 在标签(带像素)中显示图像的任何部分?
我会有一个准备好的大图像(例如32x320像素)和定义的起始位置(X,Y,例如0,32)和宽度/高度(例如32,32),并希望脚本显示第二个(32x32像素)部分主图像
这是我的第一个Bash脚本,如果这个问题很简单,请原谅我.我需要计算指定目录$ HOME/.junk中的文件数.我认为这很简单,并假设以下内容可行:
numfiles= find $HOME/.junk -type f | wc -l
echo "There are $numfiles files in the .junk directory."
Run Code Online (Sandbox Code Playgroud)
find $HOME/.junk -type f | wc -l在命令行输入完全符合我的预期,只需返回文件数.在我的脚本中输入时,为什么这不起作用?在将选项传递给实用程序时,我是否遗漏了一些特殊符号?
非常感谢您的时间和帮助.
我在Objective-C中做了以下操作,并期望180作为输出,但我得到150.任何人都可以解释我做错了什么?
(360 / 100) * 50
我想做这样的事情
ruby test.rb | source /dev/stdin
Run Code Online (Sandbox Code Playgroud)
test.rb打印出来的地方cd /.没有错误,但它也没有做任何事情.如果我用这个:
ruby test.rb > /tmp/eraseme2352; source /tmp/eraseme2352
Run Code Online (Sandbox Code Playgroud)
它工作正常,但我想避免中间文件.
编辑:这一点的重点是命令完成后需要保持更改.对不起,我之前没有说清楚.
我的主页顶部有一个站点地图,当我在Firefox中运行时,第一个节点是"Skip Navigation Links"那是什么?我怎么能摆脱那个?值得注意的是,这不是在IE中.
在VB.NET中,有一个选项可以在单击"添加新窗口"时添加"启动画面",但是当我使用C#执行此操作时,我找不到任何内容.
所以
如何在C#中添加启动画面?
我正在阅读Real World Haskell中的Monads章节(第14章).函数定义如下:
type RandomState a = State StdGen a
getRandom :: Random a => RandomState a
getRandom =
get >>= \gen ->
let (val, gen')= random gen in
put gen' >>
return val
Run Code Online (Sandbox Code Playgroud)
我真的不明白get和put函数的用途.我重写了以下函数,它似乎做了同样的事情并且更简洁:
getRandom2 :: Random a => RandomState a
getRandom2= State $ \ s -> random s
Run Code Online (Sandbox Code Playgroud)
所以我的问题是:获取和放置一般的目的是什么?
我的PHP代码中有一些非常奇怪的行为.我不知道这是否真的是一个很好的问题,因为它几乎看起来像PHP中的一个错误.我在我的一个项目中遇到了这个问题,并将问题隔离开来:
// json object that will be converted into an array
$json = '{"5":"88"}';
$jsonvar = (array) json_decode($json); // notice: Casting to an array
// Displaying the array:
var_dump($jsonvar);
// Testing if the key is there
var_dump(isset($jsonvar["5"]));
var_dump(isset($jsonvar[5]));
Run Code Online (Sandbox Code Playgroud)
该代码输出以下内容:
array(1) {
["5"]=>
string(2) "88"
}
bool(false)
bool(false)
Run Code Online (Sandbox Code Playgroud)
最大的问题:这两个测试都应该产生bool(true) - 如果使用常规的php数组创建相同的数组,这就是你会看到的:
// Let's create a similar PHP array in a regular manner:
$phparr = array("5" => "88");
// Displaying the array:
var_dump($phparr);
// Testing if the key is there
var_dump(isset($phparr["5"])); …Run Code Online (Sandbox Code Playgroud) 我使用python sax来解析xml文件.xml文件实际上是多个xml文件的组合.它看起来如下:
<row name="abc" age="40" body="blalalala..." creationdate="03/10/10" />
<row name="bcd" age="50" body="blalalala..." creationdate="03/10/09" />
Run Code Online (Sandbox Code Playgroud)
我的python代码如下.它显示"文件元素之后的垃圾"错误.有任何好主意来解决这个问题.谢谢.
from xml.sax.handler import ContentHandler
from xml.sax import make_parser,SAXException
import sys
class PostHandler (ContentHandler):
def __init__(self):
self.find = 0
self.buffer = ''
self.mapping={}
def startElement(self,name,attrs):
if name == 'row':
self.find = 1
self.body = attrs["body"]
print attrs["body"]
def character(self,data):
if self.find==1:
self.buffer+=data
def endElement(self,name):
if self.find == 1:
self.mapping[self.body] = self.buffer
print self.mapping
parser = make_parser()
handler = PostHandler()
parser.setContentHandler(handler)
try:
parser.parse(open("2.xml"))
except SAXException:
Run Code Online (Sandbox Code Playgroud) bash ×2
architecture ×1
arrays ×1
asp.net ×1
asp.net-mvc ×1
c# ×1
find ×1
haskell ×1
image ×1
javascript ×1
macos ×1
math ×1
monads ×1
objective-c ×1
php ×1
python ×1
sax ×1
scripting ×1
sitemappath ×1
state ×1
utilities ×1
wc ×1