小编Exp*_* be的帖子

C#Object null检查

我使用DataReader读取了我的数据库.

并且某些行没有fdate值.

因此,当我将null日期转换为DateTime时,会发生错误.

如何查看该字段是否为空?

AdsCommand cmd = conn.CreateCommand();
cmd.CommandText = "select name,fdate from abc";

AdsDataReader reader = cmd.ExecuteReader();

DateTime flsdate = (reader["fdate"].Equals(null))? Convert.ToDateTime(reader["fdate"]) : DateTime.Today;
Run Code Online (Sandbox Code Playgroud)

我尝试使用Equals,但它不起作用.

有谁知道如何检查null对象以避免转换错误?

谢谢!

.net c# sql asp.net datareader

8
推荐指数
2
解决办法
4792
查看次数

Asp.net Razor,语法错误 - onclick事件参数

<input type="button" value="Delete" onclick="deleteMember(@Model.ID, '@ViewBag.returnUrl')"/>
Run Code Online (Sandbox Code Playgroud)

该代码有4个错误,2个语法错误和2个Unterminated字符串常量.

我该怎么做才能解决这些错误?

在此输入图像描述

razor

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

如何解决Could not find android.arch.lifecycle:compiler?

我正在尝试使用 Android 生命周期,但我正在准备添加生命周期编译器依赖项。

这是模块 build.gradle,

apply plugin: 'com.android.application'
apply plugin: 'kotlin-android'
apply plugin: 'kotlin-kapt'
android {
    compileSdkVersion 25
    buildToolsVersion "26.0.0"
    dataBinding {
        enabled = true
    }
    defaultConfig {
        applicationId "com.example.jj.mvvm"
        minSdkVersion 19
        targetSdkVersion 25
        versionCode 1
        versionName "1.0"
        testInstrumentationRunner "android.support.test.runner.AndroidJUnitRunner"
    }
    buildTypes {
        release {
            minifyEnabled false
            proguardFiles getDefaultProguardFile('proguard-android.txt'), 'proguard-rules.pro'
        }
    }
}

dependencies {
    compile fileTree(dir: 'libs', include: ['*.jar'])
    androidTestCompile('com.android.support.test.espresso:espresso-core:2.2.2', {
        exclude group: 'com.android.support', module: 'support-annotations'
    })
    compile 'com.android.support:appcompat-v7:25.3.1'
    compile 'com.android.support.constraint:constraint-layout:1.0.2'
    testCompile 'junit:junit:4.12'
    compile "org.jetbrains.kotlin:kotlin-stdlib:$kotlin_version"
    kapt 'com.android.databinding:compiler:2.3.3'

    implementation "android.arch.lifecycle:runtime:1.0.0" …
Run Code Online (Sandbox Code Playgroud)

android-lifecycle

8
推荐指数
1
解决办法
8794
查看次数

Extjs如何为vbox面板设置100%的高度

在此输入图像描述

嗨〜,

我想将100%的高度设置为面板2.但我不知道该怎么做..

这是我的测试代码,

{
    title : 'EAST',
    region : 'east',
    layout : 'vbox',
    layoutConfig : {
        align : 'stretch'
    },
    bodyStyle : 'border:1px solid blue',
    width: 300,
    items : [
        new Ext.Panel({
            title : 'Panel 1',
            border : true,
            layout : 'fit',
            height : 250,
            html : 'PANEL 1 AREA'
        }),
        new Ext.Panel({
            title : 'Panel 2',
            border : true,
            bodyStyle : 'border:1px solid red',
            layout : 'fit',
            html : 'PANEL 2 AREA'
        })
    ]
}
Run Code Online (Sandbox Code Playgroud)

我试过,autoHeight:true和height:'100%'到面板2但它不起作用.

谁知道,请帮帮我〜

谢谢〜!

layout extjs

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

Asp.Net MVC3,返回成功JsonResult

我还需要返回包含成功值(true或false)的JSON数据,它也需要有结果消息.

所以我使用Dictionary来包含数据,但当它返回Jason数据时,它包含""(Quot).

JsonResult = new Dictionary<string, string>();
JsonResult.Add("Success", "False");
JsonResult.Add("Message", "Error Message");
return Json(JsonResult);
Run Code Online (Sandbox Code Playgroud)

它回来了,

{"Success":"False","Message":"Error Message"}
Run Code Online (Sandbox Code Playgroud)

但是我需要,

{Success:False,Message:"Error Message"} //with out "" (Quot)
Run Code Online (Sandbox Code Playgroud)

有人知道吗?

谢谢!

asp.net asp.net-mvc-3

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

Asp.Net MVC3 - FormsAuthentication,如何在浏览器关闭时使cookie过期?

我想在浏览器关闭时使FormsAuthentication的cookie过期. (我希望它像PHP会话一样工作)

这是我的Auth代码,位于Model(非控制器)中.

型号/ Auth.cs

FormsAuthenticationTicket ticket = new FormsAuthenticationTicket(
    1,
    model.UserId,
    DateTime.Now,
    DateTime.Now.AddDays(1),
    true,
    model.UserId +" "+reader["lastname"],
    FormsAuthentication.FormsCookiePath);

string hash = FormsAuthentication.Encrypt(ticket);
HttpCookie cookie = new HttpCookie(FormsAuthentication.FormsCookieName, hash);

if (ticket.IsPersistent)
{
    cookie.Expires = ticket.Expiration;
}

HttpContext.Current.Response.Cookies.Add(cookie);
Run Code Online (Sandbox Code Playgroud)

Web.config文件

<authentication mode="Forms">
    <forms name="user" timeout="60" loginUrl="~/Auth/login" path="/"></forms>
</authentication>
<authorization>
    <deny users="?" />
</authorization>
Run Code Online (Sandbox Code Playgroud)

还有一个问题是,有2次设置cookie超时,

在票,

DateTime.Now.AddDays(1),
Run Code Online (Sandbox Code Playgroud)

并在Web.config文件中进行身份验证

<forms name="user" timeout="60" loginUrl="~/Auth/login" path="/"></forms>
Run Code Online (Sandbox Code Playgroud)

它们有多么不同,哪一个会对实际的过期cookie产生影响?

有人知道,请告诉我.

谢谢!

asp.net authentication cookies asp.net-mvc-3

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

Asp.net MVC5,如何加载.hbs文件

我正在尝试在ASP.net MVC5项目中使用(handlebar).hbs模板,但我无法加载.hbs文件.

它发生HTTP错误404.3 - 未找到

我像这样加载,

define [
    'hbs!./index'
],
Run Code Online (Sandbox Code Playgroud)

我确认路径很好. (http://local_host:1460/Scripts/js/apps/index/index.hbs)

我是否需要在某处设置.hbs扩展名?

有人知道,请指教.

asp.net-mvc handlebars.js

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

DataAdapter不需要打开数据库连接吗?

我尝试在C#.net中使用DataAdapter.我仍然不了解DataAdapter.

我阅读了很多关于DataAdapter和DataReader的文章和博客.

我了解DataAdapter会在需要时自动打开和关闭数据库.

但,

//conn.Open();
AdsDataAdapter da;
da = new AdsDataAdapter("Select * from Test", conn);
AdsCommandBuilder cb;
cb = new AdsCommandBuilder(da);

DataSet ds = new DataSet();
da.Fill(ds, "Test");

DataRow newrow = ds.Tables["Test"].NewRow();
newrow["Name"] = "How about";
ds.Tables["Test"].Rows.Add(newrow);
da.Update(ds, "Test");
Run Code Online (Sandbox Code Playgroud)

当我运行上面的代码时,我收到一条错误消息,提示"连接必须打开".

为什么适配器无法自动打开连接?

并且,我想使用insertCommand插入数据(对于此测试,我打开了连接).

da.InsertCommand = new AdsCommand("INSERT INTO test (NAME) values('Insert Test #1')", conn);
//da.InsertCommand.ExecuteNonQuery(); // it works
da.Update(ds,"Test"); //but it does not works.
Run Code Online (Sandbox Code Playgroud)

很多例子使用Adapter.Update(),但对我来说,它不起作用:(

没有错误,也没有插入.

并使用da.InsertCommand.ExecuteNonQuery(); 而不是Update(),它的工作原理.

我究竟做错了什么?

谢谢!

c# asp.net advantage-database-server dataadapter

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

Extjs4 MVC,Ext.define()和Ext.create()

首先,我的问题是我想知道Ext.Define()和Ext.Create()之间有多么不同,我想知道如何以正确的方式使用它们.

我查看了我的代码和许多Extjs4 MVC教程,

我在Extjs4 MVC项目中发现了许多Ext.define()方法.

我理解Ext.define()方法创建一个对象(CLASS).

如果我只是需要一个面板,我不会对面板进行任何继承,也不会在初始化后重复使用面板.

然后,我想我需要使用Ext.create()而不是Ext.define().

所以,我试着改变我的代码@.@;

有鉴于此

Ext.Define("App.view.MyGrid",{
    extend : 'Ext.grid.panel',
    alias : 'widget.MyGrid',
    initComponent : function(){
        this.columns : [{ header: 'column' }];
        this.store : Ext.create('Ext.data.ArrayStore', {})
    }
});
Run Code Online (Sandbox Code Playgroud)

我改变了,

var myGrid = Ext.create('Ext.grid.Panel', {
    layout: 'fit',
    border: false,
    columns: [{ header: 'column' }],
    store: Ext.create('Ext.data.ArrayStore', {})
});
Run Code Online (Sandbox Code Playgroud)

更改代码后,我遇到了一个问题,我无法检索(grep)Controller中的面板,

在我之前这样做之前,

refs: [
        {
            ref: 'myGrid',
            selector: '',
            xtype: 'MyGrid', //view - alias
            autoCreate: true
        }
]

this.getMyGrid();
Run Code Online (Sandbox Code Playgroud)

但在更改后,我不知道如何在控制器中检索该面板.

在搜索网页以了解如何grep它时,我只是想知道' 我对Ext.define()和Ext.create()的理解是否正确?为什么许多人使用Ext.define()方法,即使他们不再使用而不是继承?"

请建议我理解Extjs的基本原理.

谢谢!

extjs4 extjs-mvc extjs4.1

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

翻新中的Rxjava watchOn和subscribeOn

watchOn:此方法只是简单地将所有运算符的线程更改为更下游(https://medium.com/upday-devs/rxjava-subscribeon-vs-observeon-9af518ded53a

调用API时,我想在IO线程上运行与服务器的通信,并想在mainThread上处理结果。

我在许多教程中都看到了下面的代码,毫无疑问,它是正确的。但是我的理解是相反的,所以我想知道我的误解。

requestInterface.callApi()
    .observeOn(AndroidSchedulers.mainThread())
    .subscribeOn(Schedulers.io())
    .subscribe())
Run Code Online (Sandbox Code Playgroud)

watchOn(AndroidSchedulers.mainThread())

:observeOn将所有运算符的线程进一步向下游移动,但是在示例中,实际的调用API函数是否高于observeOn?

.subscribeOn(Schedulers.io())

:奇怪的部分,它需要在主线程上订阅,但是在IO线程上订阅?

请告诉我我误会什么?

android retrofit2 rx-java2

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