LINQ options.loadwith проблема

MainActivity.Java

public class MainActivity extends Activity {

    @Override
    protected void onCreate(Bundle savedInstanceState) {
        super.onCreate(savedInstanceState);
        setContentView(R.layout.activity_main);

        IntentFilter filter = new IntentFilter();
        filter.addAction(Intent.ACTION_HEADSET_PLUG);
        filter.addAction(Intent.ACTION_POWER_CONNECTED);
        filter.addAction(Intent.ACTION_POWER_DISCONNECTED);
        filter.addAction(Intent.ACTION_SCREEN_ON);
        filter.addAction(Intent.ACTION_SCREEN_OFF);

        registerReceiver(new MyReceiver(), filter);
    }
}

MyReciever.Java

public class MyReceiver extends BroadcastReceiver {

    MainActivity mActivity;

    @Override
    public void onReceive(Context arg0, Intent arg1) {

        mActivity = (MainActivity) arg0;

        TextView tv = (TextView)mActivity.findViewById(R.id.textView1);

        if(arg1.getAction().equals(Intent.ACTION_HEADSET_PLUG)) {
            tv.setText("Headset Plugin ");
        } else if(arg1.getAction().equals(Intent.ACTION_POWER_CONNECTED)) {
            tv.setText("Power Connected  ");
        } else if(arg1.getAction().equals(Intent.ACTION_POWER_DISCONNECTED)) {
            tv.setText("Power Disconnected  ");
        } else if(arg1.getAction().equals(Intent.ACTION_SCREEN_ON)) {
            tv.setText("Screen ON ");
        } else if(arg1.getAction().equals(Intent.ACTION_SCREEN_OFF)) {
            tv.setText("Screen OFF ");
        }   
    }
}
8
задан p.campbell 26 August 2010 в 18:23
поделиться

2 ответа

Короткий ответ: LinqToSql имеет несколько подобных особенностей, и иногда вам приходится использовать обходные пути ...

Параметр Linq2Sql LoadWith просто вызывает внутреннее соединение между таблицами базы данных , так что вы можете вызвать подобное поведение, переписав оператор Linq на что-то вроде (пожалуйста, простите за опечатки, я привык писать Linq в синтаксисе VB ...):

var x = from topic in db.Topics
        join topicMap in topic.TagTopicMaps
        orderby topic.dateAdded descending
        group topicMap by topicMap.topic into tags = Group;

Этот синтаксис может быть ужасно неправильным, но основная идея заключается в том, что вы заставляете Linq2Sql оценивать соединение между Topics и TagTopicMaps, а затем используете группировку (или "групповое соединение", "let" и т. д.), чтобы сохранить иерархию объектов в наборе результатов.

5
ответ дан 5 December 2019 в 22:20
поделиться

Установите для EnabledDefferedLoad в вашем классе datacontext значение false.

1
ответ дан 5 December 2019 в 22:20
поделиться
Другие вопросы по тегам:

Похожие вопросы: