GVKun编程网logo

asp.net – 在DataBind上默认为空值(asp.net dataset用法)

6

此处将为大家介绍关于asp.net–在DataBind上默认为空值的详细内容,并且为您解答有关asp.netdataset用法的相关问题,此外,我们还将为您介绍关于.net–缺少调试|项目的任何CPU

此处将为大家介绍关于asp.net – 在DataBind上默认为空值的详细内容,并且为您解答有关asp.net dataset用法的相关问题,此外,我们还将为您介绍关于.net – 缺少调试|项目的任何CPU构建配置,并在Windows x64上默认为Debug | x86、AbstractMethodError: abstract method "androidx.databinding.ViewDataBinding androidx.databind...、android.databinding.Bindable的实例源码、android.databinding.DataBindingComponent的实例源码的有用信息。

本文目录一览:

asp.net – 在DataBind上默认为空值(asp.net dataset用法)

asp.net – 在DataBind上默认为空值(asp.net dataset用法)

我将一个可以为空的布尔列绑定到CheckBox.
我如何默认复选框以检查列是否为空,但保留true / false值(如果存在)?

<asp:CheckBox ID="boolCheckBox" runat="server" Checked='<%# Bind("MyBoolColumn") %>'

解决方法

与Eval不同,显然除了使用字符串格式之外,你不能对Bind做太多事情:

绑定(“MyColumn”,“{0:c}”))

我找到的解决方案是使用ItemCreated事件

protected void myListView_OnItemCreated(object sender,ListViewItemEventArgs e)
    {
        if (e.Item.ItemType == ListViewItemType.InsertItem)
        {
            ((CheckBox)((ListView)sender).InsertItem.FindControl("MyCheckBox")).Checked = true;
        }
    }

.net – 缺少调试|项目的任何CPU构建配置,并在Windows x64上默认为Debug | x86

.net – 缺少调试|项目的任何CPU构建配置,并在Windows x64上默认为Debug | x86

我刚刚在我的盒子上重新安装了 Windows 7 x64.安装成功了,我对整个操作系统没有任何问题.我相信Windows或.NET x64有一个配置问题.

症状

>新项目的默认构建配置为Debug | x86.这听起来不对.我正在运行一个x64操作系统,我相信,对于之前的最后三个版本,默认的构建配置是Debug | Any cpu.
>任何cpu都不存在作为项目的构建配置,我确信应该.要构建任何x64,我需要为项目显式添加一个x64平台.

我认为Debug | Any cpu通常是默认配置是正确的.如果是这样,有什么可能的原因,这不是任何新的项目创建的情况?

新项目的默认值在Visual Studio 2010中更改为x86 – 您可以在Rick Byers的博客文章 Any CPU Exes are usually more trouble than they’re worth中阅读一些MS的推理.

您应该可以在Configuration Manager对话框中添加任何cpu作为附加平台.我有Windows Vista x64& Visual Studio 2010并获取任何cpu,x64和安腾的选项.您可以尝试重新运行Visual Studio的安装程序,并查看是否有任何您没有安装的选项.

有趣的是,似乎x86只是新的EXE项目的默认值 – 如果创建一个新的类库项目,它将默认为任何cpu.这是有道理的,因为它是确定运行哪个版本的CLR的EXE文件的平台,而任何cpu DLL都可以由x86和x64 EXE文件加载.

AbstractMethodError: abstract method

AbstractMethodError: abstract method "androidx.databinding.ViewDataBinding androidx.databind...

混淆导致的数据绑定库错误

问题摘要

AbstractMethodError: abstract method "androidx.databinding.ViewDataBinding androidx.databinding.DataBinderMapper.getDataBinder(androidx.databinding.DataBindingComponent, android.view.View, int)"

堆栈如下:

java.lang.AbstractMethodError: abstract method "androidx.databinding.ViewDataBinding androidx.databinding.DataBinderMapper.getDataBinder(androidx.databinding.DataBindingComponent, android.view.View, int)"
        at androidx.databinding.MergedDataBinderMapper.getDataBinder(MergedDataBinderMapper.java:74)
        at androidx.databinding.DataBindingUtil.bind(DataBindingUtil.java:199)
        at androidx.databinding.DataBindingUtil.inflate(DataBindingUtil.java:130)
        at androidx.databinding.DataBindingUtil.inflate(DataBindingUtil.java:95)
        at cn.sintoon.common.adapter.SinRecyclerViewBaseAdapter.onCreateViewHolder(Unknown Source:11)
        at cn.sintoon.common.adapter.SinRecyclerViewBaseAdapter.onCreateViewHolder(Unknown Source:0)
        at androidx.recyclerview.widget.RecyclerView$Adapter.createViewHolder(RecyclerView.java:6794)
        at androidx.recyclerview.widget.RecyclerView$Recycler.tryGetViewHolderForPositionByDeadline(RecyclerView.java:5975)
        at androidx.recyclerview.widget.RecyclerView$Recycler.getViewForPosition(RecyclerView.java:5858)
        at androidx.recyclerview.widget.RecyclerView$Recycler.getViewForPosition(RecyclerView.java:5854)
        at androidx.recyclerview.widget.LinearLayoutManager$LayoutState.next(LinearLayoutManager.java:2230)
        at androidx.recyclerview.widget.LinearLayoutManager.layoutChunk(LinearLayoutManager.java:1557)
        at androidx.recyclerview.widget.LinearLayoutManager.fill(LinearLayoutManager.java:1517)
        at androidx.recyclerview.widget.LinearLayoutManager.onLayoutChildren(LinearLayoutManager.java:612)
        at androidx.recyclerview.widget.RecyclerView.dispatchLayoutStep2(RecyclerView.java:3924)
        at androidx.recyclerview.widget.RecyclerView.onMeasure(RecyclerView.java:3336)
        at android.view.View.measure(View.java:23454)
        at androidx.constraintlayout.widget.ConstraintLayout.internalMeasureChildren(ConstraintLayout.java:1227)
        at androidx.constraintlayout.widget.ConstraintLayout.onMeasure(ConstraintLayout.java:1572)
        at android.view.View.measure(View.java:23454)
        at android.view.ViewGroup.measureChildWithMargins(ViewGroup.java:6834)
        at android.widget.FrameLayout.onMeasure(FrameLayout.java:185)
        at androidx.appcompat.widget.ContentFrameLayout.onMeasure(ContentFrameLayout.java:143)
        at android.view.View.measure(View.java:23454)
        at android.view.ViewGroup.measureChildWithMargins(ViewGroup.java:6834)
        at androidx.appcompat.widget.ActionBarOverlayLayout.onMeasure(ActionBarOverlayLayout.java:403)
        at android.view.View.measure(View.java:23454)
        at android.view.ViewGroup.measureChildWithMargins(ViewGroup.java:6834)
        at android.widget.FrameLayout.onMeasure(FrameLayout.java:185)
        at android.view.View.measure(View.java:23454)
        at android.view.ViewGroup.measureChildWithMargins(ViewGroup.java:6834)
        at android.widget.LinearLayout.measureChildBeforeLayout(LinearLayout.java:1565)
        at android.widget.LinearLayout.measureVertical(LinearLayout.java:847)
        at android.widget.LinearLayout.onMeasure(LinearLayout.java:726)
        at android.view.View.measure(View.java:23454)
        at android.view.ViewGroup.measureChildWithMargins(ViewGroup.java:6834)
        at android.widget.FrameLayout.onMeasure(FrameLayout.java:185)
        at com.android.internal.policy.DecorView.onMeasure(DecorView.java:847)
        at android.view.View.measure(View.java:23454)
        at android.view.ViewRootImpl.performMeasure(ViewRootImpl.java:2954)
        at android.view.ViewRootImpl.measureHierarchy(ViewRootImpl.java:1753)
        at android.view.ViewRootImpl.performTraversals(ViewRootImpl.java:2041)
        at android.view.ViewRootImpl.doTraversal(ViewRootImpl.java:1636)
        at android.view.ViewRootImpl$TraversalRunnable.run(ViewRootImpl.java:7946)
        at android.view.Choreographer$CallbackRecord.run(Choreographer.java:1092)
        at android.view.Choreographer.doCallbacks(Choreographer.java:893)
        at android.view.Choreographer.doFrame(Choreographer.java:812)
        at android.view.Choreographer$FrameDisplayEventReceiver.run(Choreographer.java:1078)
        at android.os.Handler.handleCallback(Handler.java:907)

出现场景

封装了一个类库,向外提供一个封装好的 RecyclerAdapter,使用 DataBinding 。生成类库时开启了混淆,在使用时,抛出异常。

问题原因

androidx.databinding.DataBindingComponent 混淆掉了。

如何修复

修改混淆规则。不混淆这个类。

-keep class androidx.databinding.DataBindingComponent {*;}

排查过程

根据错误堆栈看,是找不到这个方法,初步怀疑就是被混淆掉了方法,然后直接使用不混淆的测试,的确没有异常了。确认是混淆的问题。

然后在 /build/outputs/mapping/ 目录下查看 mapping.txt 文件,发现果然是将这类混淆掉了。

# compiler: R8
# compiler_version: 1.4.77
# min_api: 1
androidx.databinding.DataBindingComponent -> a.a.a:

mapping.txt 这个文件提供混淆前后类、方法、类成员等的对照表。

总结

在基础类库中使用了数据绑定库要配置混淆规则。

参考 Proguard 混淆规则

android.databinding.Bindable的实例源码

android.databinding.Bindable的实例源码

项目:spline    文件:LayerRowviewmodel.java   
@Bindable
public boolean isSelected() {
    if (layer == null) {
        return false;
    }

    return layer.isSelected();
}
项目:spline    文件:LayerRowviewmodel.java   
@Bindable
public boolean isVisible() {
    if (layer == null) {
        return true;
    }

    return layer.isVisible();
}
项目:TubiPlayer    文件:TubiObservable.java   
@Bindable
public boolean isAdplaying() {
    return adplaying;
}
项目:GitHub    文件:BooksBean.java   
@Bindable
public String getName() {
    return name;
}
项目:spline    文件:Documentviewmodel.java   
@Bindable
public int getViewportHeight() {
    return viewportHeight;
}
项目:GitHub    文件:PersonBean.java   
@Bindable
public ImagesBean getAvatars() {
    return avatars;
}
项目:spline    文件:Documentviewmodel.java   
@Bindable
public Layer getCurrentLayer() {
    return document.getCurrentLayer();
}
项目:ClouldReader    文件:BookDetailBean.java   
@Bindable
public String getBinding() {
    return binding;
}
项目:GitHub    文件:MovieDetailBean.java   
@Bindable
public String getId() {
    return id;
}
项目:grblcontroller    文件:FileSenderListner.java   
@Bindable
public String getElaspsedTime(){ return this.elaspsedTime; }
项目:FireBaseTest    文件:HomeItemviewmodel.java   
@Bindable
public int getItemId() {
    return itemId;
}
项目:ClouldReader    文件:BookDetailBean.java   
@Bindable
public String getAlt() {
    return alt;
}
项目:spline    文件:Layer.java   
@Bindable
public float getRight() {
    return getX() + getWidth();
}
项目:OCast-Java    文件:viewmodel.java   
@Bindable
public List<Track> getAudioTracks() {
    return audioTracks;
}
项目:Muse-EEG-Toolkit    文件:MuseListviewmodel.java   
/** @return Whether the list is currently scanning for devices. */
@Bindable
public boolean isScanning() {
  return this.scanning;
}
项目:ClouldReader    文件:BookDetailBean.java   
@Bindable
public String getIsbn13() {
    return isbn13;
}
项目:GitHub    文件:MovieDetailBean.java   
@Bindable
public String getoriginal_title() {
    return original_title;
}
项目:GitHub    文件:BooksBean.java   
@Bindable
public String getSubtitle() {
    return subtitle;
}
项目:GitHub    文件:BaseModel.java   
@Bindable
public String getUrl() {
    return url;
}
项目:GitHub    文件:BooksBean.java   
@Bindable
public String getPublisher() {
    return publisher;
}
项目:spline    文件:Layer.java   
@Bindable
public float getHeight() {
    return height;
}
项目:GitHub    文件:BookDetailBean.java   
@Bindable
public String getUrl() {
    return url;
}
项目:GitHub    文件:MovieDetailBean.java   
@Bindable
public int getSeasons_count() {
    return seasons_count;
}
项目:ClouldReader    文件:BookDetailBean.java   
@Bindable
public List<BooksBean.TagsBean> getTags() {
    return tags;
}
项目:ClouldReader    文件:BookDetailBean.java   
@Bindable
public List<String> getTranslator() {
    return translator;
}
项目:android-advanced-light    文件:ObSwordsman.java   
@Bindable
public String getName() {
    return name;
}
项目:GitHub    文件:MovieDetailBean.java   
@Bindable
public List<PersonBean> getDirectors() {
    return directors;
}
项目:Demos    文件:ExpressInfo.java   
@Bindable
public String getIscheck() {
    return ischeck;
}
项目:FireBaseTest    文件:Contentviewmodel.java   
@Bindable
public String getContentDescription() {
    return contentDescription;
}
项目:GitHub    文件:BooksBean.java   
@Bindable
public String getId() {
    return id;
}
项目:atlas    文件:User.java   
@Bindable
public String getFirstName() {
    return firstName;
}
项目:TubiPlayer    文件:TubiObservable.java   
@Bindable
public int getAdTotal() {
    return adTotal;
}
项目:GitHub    文件:BooksBean.java   
@Bindable
public int getMin() {
    return min;
}
项目:Demos    文件:ExpressInfo.java   
@Bindable
public List<DataBean> getData() {
    return data == null ? new ArrayList<DataBean>() : data;
}
项目:GitHub    文件:BookDetailBean.java   
@Bindable
public String getPages() {
    return pages;
}
项目:exchange-rates-mvvm    文件:CurrencyListviewmodel.java   
@Bindable
public String getDateText() {
    return mDateFormatter.format(mReadDate);
}
项目:ClouldReader    文件:BooksBean.java   
@Bindable
public String getimage() {
    return image;
}
项目:GitHub    文件:BookDetailBean.java   
@Bindable
public List<String> getAuthor() {
    return author;
}
项目:GitHub    文件:BookDetailBean.java   
@Bindable
public String getAuthor_intro() {
    return author_intro;
}
项目:ClouldReader    文件:BooksBean.java   
@Bindable
public String getPages() {
    return pages;
}

android.databinding.DataBindingComponent的实例源码

android.databinding.DataBindingComponent的实例源码

项目:Small    文件:DataBinderMapper.java   
public ViewDataBinding getDataBinder(DataBindingComponent bindingComponent,View view,int layoutId) {
    DataBinderMappable subMapper = getSubMapper(layoutId);
    if (subMapper == null) {
        return null;
    }

    layoutId = subMapper.getLayoutId((String) view.getTag());
    if (layoutId == 0) {
        bindingPackageName = null;
        throw new IllegalArgumentException("View is not a binding layout");
    }

    return subMapper.getDataBinder(bindingComponent,view,layoutId);
}
项目:Small    文件:DataBinderMapper.java   
public ViewDataBinding getDataBinder(DataBindingComponent bindingComponent,View[] views,int layoutId) {
    DataBinderMappable subMapper = getSubMapper(layoutId);
    if (subMapper == null) {
        return null;
    }

    layoutId = subMapper.getLayoutId((String) views[0].getTag());
    if (layoutId == 0) {
        bindingPackageName = null;
        throw new IllegalArgumentException("View is not a binding layout");
    }

    return subMapper.getDataBinder(bindingComponent,views,layoutId);
}
项目:firebase-chat-android-architecture-components    文件:ChatMessageAdapter.java   
public ChatMessageAdapter(DataBindingComponent dataBindingComponent,ChatMessageClickCallback clickCallback) {
    this.dataBindingComponent = dataBindingComponent;
    this.clickCallback = clickCallback;
}
项目:firebase-chat-android-architecture-components    文件:ConversationAdapter.java   
public ConversationAdapter(DataBindingComponent dataBindingComponent,ConversationClickCallback clickCallback) {
    this.dataBindingComponent = dataBindingComponent;
    this.clickCallback = clickCallback;
}
项目:android-architecture-components    文件:ContributorAdapter.java   
public ContributorAdapter(DataBindingComponent dataBindingComponent,ContributorClickCallback callback) {
    this.dataBindingComponent = dataBindingComponent;
    this.callback = callback;
}
项目:android-architecture-components    文件:Repolistadapter.java   
public Repolistadapter(DataBindingComponent dataBindingComponent,boolean showFullName,RepoClickCallback repoClickCallback) {
    this.dataBindingComponent = dataBindingComponent;
    this.repoClickCallback = repoClickCallback;
    this.showFullName = showFullName;
}
项目:Dahaka    文件:DahakaApplication.java   
private DataBindingComponent buildDataBindingComponent() {
    return DaggerAppDataBindingComponent.builder().application(this).build();
}
项目:PainlessMusicPlayer    文件:BindingAdapters.java   
@NonNull
public static DataBindingComponent glideBindingComponent(
        @NonNull final RequestManager requestManager) {
    return new GlideBindingComponent(requestManager);
}

关于asp.net – 在DataBind上默认为空值asp.net dataset用法的问题就给大家分享到这里,感谢你花时间阅读本站内容,更多关于.net – 缺少调试|项目的任何CPU构建配置,并在Windows x64上默认为Debug | x86、AbstractMethodError: abstract method "androidx.databinding.ViewDataBinding androidx.databind...、android.databinding.Bindable的实例源码、android.databinding.DataBindingComponent的实例源码等相关知识的信息别忘了在本站进行查找喔。

本文标签: