问题列表 - 第37637页

MVC/MVP中的验证

我是MVC/MVP的新手,并通过创建Winform应用程序来学习它.

我在某种程度上创建了模型,演示者和视图......现在我的验证适合哪里.

我认为初始数据类型验证(只有Age字段中的数字)应该通过视图完成.而其他验证(如年龄是否在200以内)应该由模型完成.

关于数据类型验证,我的视图将值公开为属性

public int? Age 
{ 
    get 
    { 
        int val; 
        if (Int32.TryParse(TbxAge.Text, out val))
        { 
            return val; 
        } 
        return null; 
    } 
    set 
    { 
        TbxAge.Text = value; 
    } 
} 
Run Code Online (Sandbox Code Playgroud)

我可以单独执行验证,但是当它尝试访问属性Age?时,如何通知演示者验证仍处于待处理状态?特别是当该领域是可选的.

抛出一个验证暂停异常是好的,但是演示者必须在每个点都捕获它.

我的理解是正确的,还是我错过了什么.

更新(为了清楚起见): 在这个简单的情况下,年龄字段是可选的,当用户键入他的名字而不是数字时我该怎么办.我无法传递null,因为这意味着该字段已被用户留空.那么如何通知演示者输入的数据无效...

c# model-view-controller mvp winforms

7
推荐指数
1
解决办法
1773
查看次数

链接到电子邮件附件

嗨,我发送电子邮件附件(使用PHP),并希望向我发送电子邮件的人指出有附件.我想通过在电子邮件的html正文中显示一个链接来做到这一点,所以他们需要做的就是点击链接,然后系统会尝试打开/查看附件.

有谁知道这是否可能?如果是这样,任何正确方向的指针/推动都会受到赞赏.

hyperlink email-attachments

6
推荐指数
1
解决办法
9599
查看次数

如何仅为具有specyfic模板ID的列表添加事件接收器

我正在为自定义列表模板添加ItemAdding事件接收器.事件接收器和列表模板都由相同的功能部署.同样的功能也会创建列表实例.

我遇到的问题是,为部署它的站点中的每个列表项触发了事件.eventreceivre的Elements.xml是:

<Receivers ListTemplateId="10200">
  <Receiver>
    <Name>ListEventReceiverItemAdding</Name>
    <Type>ItemAdding</Type>
    <Assembly>$SharePoint.Project.AssemblyFullName$</Assembly>
    <Class>SharepoitProject.ListEventReceiver</Class>
    <SequenceNumber>10000</SequenceNumber>
  </Receiver>
</Receivers>
Run Code Online (Sandbox Code Playgroud)

我不确定我做错了什么我从这里开始或多或少做了什么.

环境:Sharepoint 2010与本网站上的发布功能

sharepoint sharepoint-2010 sharepoint-listtemplate eventreceiver

7
推荐指数
1
解决办法
2万
查看次数

Android:GC不尊重SoftReferences?

它接收Dalvik的垃圾收集器不尊重SoftReferences并尽快删除它们,就像WeakReferences一样.我还不是100%肯定,但是在我看到LogCat中的"GC释放bla-bla-bla字节"之后,我的SoftReferences仍然被释放了大约3MB的可用内存.

另外,我看到马克·墨菲评论这里:

除非它在Android上不起作用,至少在1.5时间范围内.我不知道GC SoftReference错误是否已修复.SoftReferences很快就会遇到这个bug.

这是真的吗?SoftReferences不受尊重吗?

如何解决这个问题?

android garbage-collection weak-references soft-references

10
推荐指数
1
解决办法
1903
查看次数

两个C#扩展泛型方法之间的模糊调用,其中T:class和其他T:struct

考虑两种扩展方法:

public static T MyExtension<T>(this T o) where T:class
public static T MyExtension<T>(this T o) where T:struct
Run Code Online (Sandbox Code Playgroud)

一节课:

class MyClass() { ... }
Run Code Online (Sandbox Code Playgroud)

现在在上面的类的实例上调用extension方法:

var o = new MyClass(...);
o.MyExtension(); //compiler error here..
o.MyExtension<MyClass>(); //tried this as well - still compiler error..
Run Code Online (Sandbox Code Playgroud)

编译器说当我在类上调用它时调用该方法是一个模糊的调用.我原以为它可以确定调用哪个扩展方法,因为MyClass是一个类,而不是一个结构体?

.net c# generics extension-methods

45
推荐指数
3
解决办法
4971
查看次数

Android C++ NDK

我正在尝试为android ndk编译以下内容

#include <jni.h>
#include <string.h>

extern "C" {
    JNIEXPORT jstring JNICALL Java_com_knucklegames_helloCpp_testFunction(JNIEnv * env, jobject obj);
};

JNIEXPORT jstring JNICALL Java_com_knucklegames_helloCpp_testFunction(JNIEnv *env, jobject obj) {
 return env->NewStringUTF(env, "Hello from native code!");
}
Run Code Online (Sandbox Code Playgroud)

但它给出了以下错误

Compile++ thumb: helloCpp <= /cygdrive/c/workspace/helloCpp/jni/main.cpp
/cygdrive/c/workspace/helloCpp/jni/main.cpp: In function '_jstring* Java_com_knucklegames_hello
Cpp_testFunction(JNIEnv*, _jobject*)':
/cygdrive/c/workspace/helloCpp/jni/main.cpp:10: error: no matching function for call to '_JNIEn
v::NewStringUTF(JNIEnv*&, const char [24])'
/cygdrive/d/android/android-ndk-r4b/build/platforms/android-8/arch-arm/usr/include/jni.h:839: note: candidates
 are: _jstring* _JNIEnv::NewStringUTF(const char*)
make: *** [/cygdrive/c/workspace/helloCpp/obj/local/armeabi/objs/helloCpp/main.o] Error 1
Run Code Online (Sandbox Code Playgroud)

c++ android android-ndk

13
推荐指数
1
解决办法
8162
查看次数

如何调试Safari静默无法连接到安全的WebSocket

new WebSocket('ws://server/');Safari连接时很好,但是当new WebSocket('wss://server/');它完全失败时(返回一个null对象).更糟糕的是,它无声地失败 - 在回溯(自定义Eventlet Web服务器)或Safari中的错误控制台中没有错误.

Chrome可与安全主机和非安全主机配合使用.

我该如何调试或修复此问题?谷歌信息非常缺乏.

这是从运行OpenSSL代替WebSockets服务器并查看会发生什么的一些追溯.首先,这是Chrome的(可以正常工作)调试输出:

Using default temp DH parameters
Using default temp ECDH parameters
ACCEPT
SSL_accept:before/accept initialization
SSL_accept:SSLv3 read client hello A
SSL_accept:SSLv3 write server hello A
SSL_accept:SSLv3 write certificate A
SSL_accept:SSLv3 write key exchange A
SSL_accept:SSLv3 write server done A
SSL_accept:SSLv3 flush data
SSL_accept:SSLv3 read client key exchange A
SSL_accept:SSLv3 read finished A
SSL_accept:unknown state
SSL_accept:SSLv3 write change cipher spec A
SSL_accept:SSLv3 write finished A
SSL_accept:SSLv3 flush data …
Run Code Online (Sandbox Code Playgroud)

javascript safari ssl websocket

9
推荐指数
1
解决办法
7992
查看次数

java.sql.SQLException:列计数与第1行的值计数不匹配

我正在尝试使用JDBC更新值,并且我继续为不同的表和不同的模式获得相同的错误.

假设我有一张这样的桌子

+----------------+-------------+------+-----+---------+-------+
| Field          | Type        | Null | Key | Default | Extra |
+----------------+-------------+------+-----+---------+-------+
| field1         | varchar(50) | YES  |     | NULL    |       |
| field2         | varchar(50) | YES  |     | NULL    |       |
+----------------+-------------+------+-----+---------+-------+
Run Code Online (Sandbox Code Playgroud)

然后,我尝试添加一行:

String Text1 = text1;
String Text2 = text2;
String Query_String = "INSERT INTO tablename(field1,field2) VALUES ('"+Text1+","+Text2+"')";
Query_Statement.executeUpdate(Query_String);
Run Code Online (Sandbox Code Playgroud)

列数是相同的,并且在文本中没有其他逗号,但我继续得到错误"java.sql.SQLException:列计数与第1行的值计数不匹配"

我确信它很简单,可能是因为我设法让它与单列一起使用...

提前致谢

java mysql jdbc

6
推荐指数
1
解决办法
5万
查看次数

生成包含Matlab中给定集合的至少一个元素的所有组合

我用它combnk来生成一个组合列表.如何生成组合子集,其中始终包含特定值.例如,因为combnk(1:10, 2)我只需要包含3和/或5的组合.有快速的方法吗?

matlab combinations

9
推荐指数
1
解决办法
1万
查看次数

Java软件编辑器/语法荧光笔

我必须为Java构建一个软件编辑器,所以想想一个非常简化的Netbeans/Eclipse.我想要做的第一个区域是语法高亮显示.

我发现了一些库/开源编辑器,如jEdit,BlueJ和jsyntaxpane,它们对于构建我自己的库有用.

我正在寻找的是任何文献/期刊/书籍/文章,它们解释了编写语法荧光笔的过程.

java syntax-highlighting text-editor editor

5
推荐指数
1
解决办法
617
查看次数